dsoFramer 控件修改好了,现在可以成功保存到web服务器上

原始的vc++代码可以在这里下载
http://download.microsoft.com/download/OfficeXPDev/sample/1.0/WIN98MeXP/EN-US/Dsoframerctl.exe
说明文档:SAMPLE: Visual C++ ActiveX Control for Hosting Office Documents in Visual Basic or HTML
http://support.microsoft.com/default.aspx?scid=kb;en-us;311765

从上面连接下的代码保存到服务上总是不成功
修改以下地方就行了:
在CDsoDocObject 类的 UploadWebResource 方法里
在变量申明后添加下面一句
   SAFE_RELEASE_INTERFACE(m_pstgSourceFile);

在最后的return语句之前添加下面一句
 StgOpenStorage(m_pwszSourceFile, NULL,
  (STGM_TRANSACTED | STGM_SHARE_DENY_WRITE | STGM_READWRITE), NULL, 0, &m_pstgSourceFile);



第一句是取消文档锁定, 第二局锁定文档
文档处于锁定状态时上传时由于不能打开文件而导致上传到服务器失败

修改后的源文件下载


现在正在尝试添加打印预览,还在进行中

posted on 2004-06-16 13:11  流云之心  阅读(25455)  评论(177编辑  收藏  举报

导航