![](/img/trans.png)
[英]How to pass input to main sub in Visual Studio console application for an exe to be run in batch mode?
[英]Run CATIA VBA macro in batch mode from Visual Studio
我创建了一个VB类来操纵CATIA项目。 VB代码被编译成一个DLL,该DLL加载到C#项目中。
Imports ProductStructureTypeLib
Imports INFITF
Imports MECMOD
Public Class MyCATIAClass
Private catia As INFITF.Application
Public Sub New()
catia = GetObject(, "CATIA.Application")
End Sub
Public Sub doStuff()
' do stuff
End Sub
End Class
在C#中:
MyCATIAClass catOb = new MyCATIAClass();
catOb.doStuff();
这样很好。 我的问题是:是否可以在批处理模式下运行该方法? 这将大大提高运行时的性能。
您最好创建一个批处理文件(并从其内部调用vbfile)并通过以下代码Process.Start(“批处理文件的路径\\ nameOfBatchFile.bat”)从c#代码运行该文件
在此之前,要在记事本中创建批处理文件,请编写以下命令并将其另存为fileName.bat
@echo on
cd path of vbfileName
start vbfileName
为了在不可视化的情况下执行任务,将visible属性设置为false就足够了。
Imports ProductStructureTypeLib
Imports INFITF
Imports MECMOD
Public Class MyCATIAClass
Private catia As INFITF.Application
Public Sub New()
catia = GetObject(, "CATIA.Application")
End Sub
Public Sub doStuff()
catia.Visible = False
' do stuff
End Sub
末级
批量启动CATIA:“ C:\\ cv5 \\ B20 \\ win_b64 \\ code \\ bin \\ CNEXT.exe-批处理-env CATIA.V5R20.B20 -direnv C:\\ cv5env \\ CATEnv”
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.