我一直在尝试一周,我找不到解决方案。问题是我用Excel VB自动化了CATIA中的进程,现在我想使用Visual Studio 2015.我唯一的问题是Visual Studio中的调试器。当我使用时:
Dim CATIA As INFITF.Application = GetObject(, "CATIA.Application");
我有{System.__ComObject}
因此,点击“动态视图”(调试器/本地人)我没有得到该对象的任何属性。如果使用Excel.Application代替CATIA.Application,我可以在“动态视图”中看到对象的不同属性。
http://stpserver.webcindario.com/vstudiodebugger.png
当我输入代码时:
Set CATIA = GetObject(,"CATIA.Application")
在Excel VBA中,在调试器中它将显示对象的所有属性。
http://stpserver.webcindario.com/excevbadebugger.png
我的问题是我如何在Visual Studio 2015调试器窗口中看到CATIA对象的属性,因为我可以在Excel VB调试器中看到它们。
PD:我已在Visual Studio 2015中导入了所有必需的引用
答案 0 :(得分:0)
Dassault Systemes为他们的CATIA支持的最新版本(顺便说一下,哪个版本?操作系统是什么?)是VS2013(希望我没有犯错)。
答案 1 :(得分:0)
相关文章:Use C# for Catia V5 Automation
可悲的是,我不知道您需要的确切VB.net代码,但这应该指向正确的方向。由于您希望COM对象的过程相同,因此只有语法不同。
在Visual Studio项目中,右键单击“添加引用”。在“COM”选项卡下,“类型库”部分查找:CATIA V5 InfInterfaces对象库。这是INFITF.Application所必需的。如果你想在Catia中使用其他对象,你将需要MecModInterfaces,PartInterfaces,ProductInterfaces,对于HybridShape类型,你将需要CATGSMIDLItf对象库(它在R23之前有一个不同的名称,但我不记得它是什么)。 之后,您需要使用Marshal附加到Catia过程。
由于您使用的是COM,因此Visual Studio的版本无关紧要。如果您使用具有版本特定工具的CAA-RADE,那么这很重要。 我已成功使用Visual Studio 2010(使用Catia R19-20),VS2012(使用Catia R22和R23),VS2013和VS2015(使用Catia R23)。 我认为您的问题可能与缺少的参考文献有关。