942x
004499
2020-07-10

问题

如何通过 COM 接口在后台打开和关闭 RFEM/RSTAB?


回复:

通过用“新建”初始化应用程序(接口)类型的变量,RFEM/RSTAB 在后台启动。 使用该变量,您还可以使用“创建模型”方法创建新模型,或使用“关闭”命令关闭程序。

以下示例显示如何启动 RSTAB,在程序中创建带有节点的模型,以及如何关闭程序:


子 RSTAB_open_close()

将文件名调暗为字符串
文件名 = Application.ActiveSheet.Cells(7, 3)

' 启动 rfem
Dim iApp As RSTAB8.Application
设置 iApp = 新建 RSTAB8.Application

iApp.LockLicense
iApp.Show

出错时转到 E

' 创建模型
Dim iMod As RSTAB8.IModel2
设置 iMod = iApp.CreateModel(filename)
    
' 向模型中添加数据
尺寸调整为 RSTAB8.Node
nd.no = 10
nd.X = 1
nd.Y = 2
nd.Z = 3
    
Dim iModdata As RSTAB8.iModelData
设置 iModdata = iMod.GetModelData
    
iModdata.PrepareModification
iModdata.SetNode nd
iModdata.FinishModification
    
iMod.保存文件名


E: 如果 Err.Number <> 0 那么 MsgBox Err.description, , Err.Source
    
设置 iModdata = 无
设置 iMod = 无
iApp.UnlockLicense
iApp.关闭
设置 iApp = 无
    
末端接头


“iApp.Show”命令是可选的。 这样可以正常显示程序,而不是在后台。

在下载下您可以找到一个 Excel 宏,该宏包含 RFEM 和 RSTAB 的子程序。

请注意,创建文件的文件夹必须存在。