我创建了一个VB类来操作CATIA项目。 VB代码被编译成一个加载到C#项目中的DLL。
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();
这很好用。我的问题是:是否可以在批处理模式下运行该方法?这会显着提高运行时的性能。
答案 0 :(得分:0)
你最好创建一个批处理文件(并从里面调用vbfile)并通过以下代码从c#代码运行它 Process.Start("批处理文件的路径\ nameOfBatchFile.bat")
在此之前,在记事本中创建批处理文件,请编写以下命令 并将其另存为fileName.bat
@echo on
cd path of vbfileName
start vbfileName
答案 1 :(得分:0)
为了在没有可视化的情况下执行任务,将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
结束班
答案 2 :(得分:0)
批量启动CATIA: “C:\ cv5 \ B20 \ win_b64 \ code \ bin \ CNEXT.exe -batch -env CATIA.V5R20.B20 -direnv C:\ cv5env \ CATEnv”