如何保存DWG文件,可以设置保存的文件版本号和密码?
C#开发|黄洪辉|2018-06-12 10:14
-
回答:
主要用到函数说明:
MxDrawXCustomFunction::Mx_SaveDwgEx
保存DWG文件,可以设置保存的文件版本号和密码,详细说明如下:
参数 说明 IN CString sFileName
保存的DWG文件绝对路径,如果扩展名为DXF文件,则保存为DXF文件., 扩展名为DWF文件,则保存为DWF文件, 扩展名为PDF文件,则保存为PDF文件, 扩展名为JPG文件,则保存为JPG文件, 扩展名为BMP文件,则保存为BMP文件
IN LONG lVersion
DWG文件的版本,默认值kDHL_1015是AutoCAD2002格式,为0取默认值 vAC15 = kDHL_1015, // R15 (2000) release 取值:23 vAC18 = kDHL_1800, // R18 (2004) release 取值:25 vAC21 = kDHL_1021, // R21 (2007) release 取值:27 vAC24 = kDHL_1024, // R24 (2010) release 取值:29
wszPassword
DWG文件的密码,kDHL_1024版式本可以设置密码,为空不设置密码
IMxDrawResbuf::AddString
向链表中增加一个string数据,详细说明如下:
参数 说明 LPCTSTR pszVal
数据值
LONG lDataType = -10
数据类型,DXF组码,如果传-10就取默认值1000
c#代码实现如下:
MxDrawService ser = new MxDrawService(); ser.Open("h:\B02 二层梁平法施工图.dwg"); MxDrawApplication app = new MxDrawApplication(); app.Call("ExApp_DeleteUselessLayer",""); MxDrawResbuf param = new MxDrawResbuf(); param.AddString("H:\2029.dwg"); param.AddLong(29); app.CallEx("Mx_SaveDwgEx", param);