明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 803|回复: 7

关于OFM向导的ObjectARX多版本项目设置平台集的分享

  [复制链接]
发表于 2025-7-2 20:55:28 | 显示全部楼层 |阅读模式
本帖最后由 edata 于 2025-7-2 20:57 编辑

本来想再写一个OMF多版本编译的设置,奈何精力有限,没研究透彻。
简要分享一下OMF向导生成的配置平台集如何匹配配置文件


用记事本之类的工具在项目的.vcxproj文件所在的目录新建一个ArxPlatformToolset.props文件
写入下面的代码并保存
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  3.   <PropertyGroup Label="Configuration">
  4.     <PlatformToolset Condition="'$(Configuration)'=='arx2012'">v90</PlatformToolset>
  5.     <PlatformToolset Condition="'$(Configuration)'=='arx2013'">v100</PlatformToolset>
  6.     <PlatformToolset Condition="'$(Configuration)'=='arx2015'">v110</PlatformToolset>
  7.     <PlatformToolset Condition="'$(Configuration)'=='arx2018'">v140</PlatformToolset>
  8.     <PlatformToolset Condition="'$(Configuration)'=='R23'">v141</PlatformToolset>
  9.     <PlatformToolset Condition="'$(Configuration)'=='arx2019'">v141</PlatformToolset>
  10.     <PlatformToolset Condition="'$(Configuration)'=='arx2020'">v141</PlatformToolset>
  11.     <PlatformToolset Condition="'$(Configuration)'=='arx2021'">v142</PlatformToolset>
  12.     <PlatformToolset Condition="'$(Configuration)'=='arx2025'">v143ForCAD2025</PlatformToolset>
  13.   </PropertyGroup>
  14. </Project>




修改项目的.vcxproj文件


找到下面的位置
添加导入平台集设置
  1. <PropertyGroup Label="Globals">
  2.     <ProjectGuid>{E9CF50E3-8C42-45CF-90C4-C8159A5361E0}</ProjectGuid>
  3.     <RootNamespace>ArxProject20</RootNamespace>
  4.     <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
  5.   </PropertyGroup>

  6.   <!-- 导入平台集设置 -->
  7.   <Import Project="ArxPlatformToolset.props" />

  8.   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
复制代码


如果arx项目是打开状态,关闭arx项目再重新打开arx项目

新建一个基于release的配置,名为R23,

查看平台集默认已变成v141

这样就完成了平台集的设置。

通过自己定义props文件中的配置名,如arx2019,arx2020等,再新建配置的时候,自定匹配平台集。这个props可以作为模版,反复使用。
通过类似的方式,也可以实现其他的设置。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x

评分

参与人数 3明经币 +3 金钱 +110 收起 理由
gzxl + 1 + 50 很给力!
cable2004 + 1 + 10 很给力!
zixuan203344 + 1 + 50 E大出品,必属精品

查看全部评分

回复

使用道具 举报

发表于 2025-7-2 21:42:18 | 显示全部楼层
应该做一个一键配置,慢慢做,反正早配晚配总要配.
回复 支持 反对

使用道具 举报

发表于 2025-7-4 20:58:23 | 显示全部楼层
谢谢楼主分享
回复 支持 反对

使用道具 举报

发表于 2025-7-21 08:41:48 | 显示全部楼层
https://github.com/mmamkin/mtmdedit
这个开源中的配置方式开以借鉴,修改后使用VS2022编译所有版本了,通用也可以把GRX、ZRX加上
回复 支持 反对

使用道具 举报

发表于 2025-7-21 21:28:26 | 显示全部楼层
这个很好,学习学习,谢谢大佬分享
回复 支持 反对

使用道具 举报

发表于 3 天前 | 显示全部楼层
我来,(1)先安装 ObjectARX 2026 Wizards。
(2)目录 C:\Program Files (x86)\Autodesk\ObjectARX 2026 Wizards\ArxAppWiz\Templates\1033下面:
x64win32.vcxproj


(3)Autodesk.arx-2026.props



(4)这样用向导新建项目,直接vs2022项目 选 工具集,配置自动切换


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
回复 支持 反对

使用道具 举报

发表于 3 天前 | 显示全部楼层
本帖最后由 aeo000000 于 2025-8-14 14:45 编辑

x64win32.vcxproj  原来有的一行,删除: <Import Project="Autodesk.arx-2026.props" />
换到我标的地方,就是要换个位置。
就是要求先选择,后再加载Autodesk.arx-2026.props



<ImportGroup Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
     <!-- <Import Project="Autodesk.arx-2026.props" /> -->
  </ImportGroup>
  <PropertyGroup Label="Configuration">
    <ArxSDKPlatform Condition="'$(PlatformToolset)' == 'v143'">v143</ArxSDKPlatform>
    <ArxSDKPlatform Condition="'$(PlatformToolset)' == 'v142'">v142</ArxSDKPlatform>
    <ArxSDKPlatform Condition="'$(PlatformToolset)' == 'v141'">v141</ArxSDKPlatform>
  </PropertyGroup>
  <ImportGroup Label="PropertySheets">
    <Import Project="Autodesk.arx-2026.props" />
  </ImportGroup>

不过按逻辑,可能不删除也行
回复 支持 反对

使用道具 举报

 楼主| 发表于 3 天前 | 显示全部楼层
aeo000000 发表于 2025-8-14 14:43
x64win32.vcxproj  原来有的一行,删除:
换到我标的地方,就是要换个位置。
就是要求先选择,后再加载A ...

相同的属性后面的可能会覆盖前面的设置,根据需要调整位置或者修改覆盖条件
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-8-17 05:55 , Processed in 0.168704 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表