[MSCE]程序化导入X_T文件


最近不断有用户在咨询如何程序化自动导入、导出一些文件。在MicroStation SDK中没有公开任何导入和导出的函数,那么是否就没有办法实现自动导入、导出功能了呢?答案是否定的。

就拿导入X_T(西门子的ParaSolid格式)举例:

1、录制一个导入X_T的宏,升级该宏为VBA代码。改造该VBA代码使其能接收参数。改造后的VBA程序如下:

communities.bentley.com/.../ImportX_5F00_T.mvba

2、下载这个MVBA程序放到文件夹C:\ProgramData\Bentley\MicroStation CONNECT Edition\Configuration\Organization\Macros下

3、在您的MDL(C++)代码中写如下几行代码即可实现自动执行该VBA。

void importX_T()
{
	WCharCP pArg = L"D:\\MS-Owner\\MS Wednesday\\012.x_t";
	WPrintfString keyinStr(L"MACRO VBA RUN [ImportX_T]Main %s", pArg);
	mdlInput_sendSynchronizedKeyin(keyinStr.GetWCharCP(), false, MSInputQueuePos::INPUTQ_EOQ, nullptr);
}

对于您不同的X_T文件,只需要对参数pArg做修改即可。

【注】:本文未详述如何改造VBA程序,如果您想要导入其他格式的文件而不会依照这个ImportX_T.vba做改造的话,请继续联系我们Bentley技术支持。