我使用Visual Studio 2012,.Net ver 4构建了一个应用程序。它使用调试运行正常,直到我尝试构建或发布它。如果我在AcdbMgd.dll上将Copy Local属性或Acmgd.dll设置为False(如.NET开发人员指南中所建议的那样),则会收到有关需要强签名的AutoCAD DLL文件的错误消息,以便将其标记为先决条件。如果我为这两个引用将此属性设置为True,则应用程序构建但会给出运行时错误“公共语言运行时检测到无效程序”。我已经尝试删除对这两个文件的引用并删除bin和obj文件夹,没有运气。我正在使用ObjectARX 2014 SDK作为dll文件,但我也尝试了AutoCAD 2014安装中包含的dll文件,结果相同。那里有什么想法吗?
答案 0 :(得分:1)
objectarx sdk附带的AcDbMgd.dll和AcMgd.dll文件是AutoCAD安装文件夹中的文件的精简版本。它们包含签名但不包含工作代码。在某些情况下,可以使用开发dll覆盖您的工作dll。 将objectarx目录中相关dll的大小与acad目录中的dll大小进行比较。如果它们的大小相同,则可能需要进行安装修复/重新安装。