把Dwg 文件保存到网上服务器中
static BOOL SaveDwgToURL(MXDRAWOCXHANDLE hOcx, IN LPCTSTR pszServerUrl, IN LPCTSTR pszServerProgramUrl, IN LPCTSTR pszComponentName, IN LPCTSTR pszPort, OUT CString& sResponse, IN LPCTSTR pszFileTag = NULL);
参数 |
说明 |
MXDRAWOCXHANDLE hOcx |
控件的ocx句柄,不能为空 |
IN LPCTSTR pszServerUrl |
服务器网址地址,如:www.mxdraw.com |
IN LPCTSTR pszServerProgramUrl |
服务器的文件上传处理程序,如:upload.asp |
IN LPCTSTR pszComponentName |
HTML组件名称,相当于一个HTML页面的Form中的中的file1 |
IN LPCTSTR pszPort |
服务处理端口. 如:_T("80") |
OUT CString& sResponse |
服务器返回的信息 |
IN LPCTSTR pszFileTag = NULL |
文件标志名称值,表单提交事件中filename值。是"Content-Disposition: form-data; name="file1"; filename="ymgcw.dwg"中的filename值。
|
成功返回TRUE
模拟一个文件表单提交上传文件,详细例程参考sampleAspNet中"保存dwg文件到服务器"按钮 模拟的表单提交,向服务器发送的请求,使用Fiddler工具能看见 因为Fiddler的问题, Fiddler工具查看本地服务器请求内容时,本地服务器ip地址需要写成http://127.0.0.1.,而不能写成http://localhost 下面的代码调用效果
if (!MxDrawXCtrl_Obj.SaveDwgToURL("http://127.0.0.1.", "/Save.aspx", "ComponentName", "6046")) { var ret = MxDrawXCtrl_Obj.CallCustomFunction("Mx_GetLastError",""); alert(ret.AtString(0)); } else { alert("成功"); }
等同于这个代码,这个代码可以放到htm文件中,运行执行
<form action="Save.aspx"method="post" enctype="multipart/form-data"> <input id="File1" type="file" name="ComponentName" /><br /> <input id="Submit1" type="submit" value="submit" /> </form>