在C++代码中有个函数mdlSystem_compressDgnFile()可以压缩当前打开的文件。
我的需求是在后台代码中拿到一个dgnFile类型的对象,如何不在前台打开就调用压缩命令对其进行压缩呢?
霄男 宿 said:如何不在前台打开就调用压缩命令对其进行压缩呢?
您可以参照下文在后台处理一批DGN文件而不让用户看到操作界面。这种工作模式下每个打开的文件还是被作为当前文件看待的。
[MSCE C#]通过COM技术实现MSCE的自动化
在这种COM编程对象模型中,可以通过发送键入命令Compress Design Confirm来实现。
这种方法所有的操作都需要通过Bentley.Interop.MicroStationDGN类来操作吧?因为我还要对文件进行大量的其他操作,我对Bentley.Interop.MicroStationDGN;类不太熟悉,好多功能找不到对应的接口。。。不过同样感谢提供的方法。
如果对Inerop编程对象模型不熟悉的话,你可以用你熟悉的对象模型写一个DLL程序,仅通过Inerop加载你的程序来执行即可。
这个听起来是个好主意啊~是不是就类似通过Inerop来调用KeyIn执行我的dll一样?我的dll会弹出进度条窗口,这不影响吧?