0

我创建了一个 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();

这工作得很好。我的问题是:是否可以在批处理模式下运行该方法?这将显着提高运行时的性能。

4

3 回答 3

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

结束类

于 2016-04-20T14:49:01.123 回答
0

批量启动 CATIA:“C:\cv5\B20\win_b64\code\bin\CNEXT.exe -batch -env CATIA.V5R20.B20 -direnv C:\cv5env\CATEnv”

于 2017-03-02T12:39:03.237 回答
0

您最好创建一个批处理文件(并从其中调用 vbfile)并通过以下代码从 c# 代码运行它 Process.Start("path of your batch file\nameOfBatchFile.bat")

在此之前在记事本中创建批处理文件,编写以下命令并将其保存为 fileName.bat

@echo on
cd path of vbfileName    
start vbfileName
于 2016-04-04T13:57:58.237 回答