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