首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > XML SOAP >

使用MSXML加载xml文件时,可不可像CFile:Open(CFile:modeCreate|CFile:modeWrite)有模式可选择吗解决方法

2012-02-11 
使用MSXML加载xml文件时,可不可像CFile:Open(CFile::modeCreate|CFile::modeWrite)有模式可选择吗下面是我

使用MSXML加载xml文件时,可不可像CFile:Open(CFile::modeCreate|CFile::modeWrite)有模式可选择吗
下面是我的部分代码(个人觉得没必要提供全部代码)
  pDoc->put_async(VARIANT_TRUE);

  vFileName.vt = VT_BSTR;
  V_BSTR(&vFileName) = bstrFileName;
  pDoc->load(vFileName, &vb);

在加载xml时,可否像标题上说的,像CFile:Open(CFile::modeCreate|CFile::modeWrite)有打开模式可以选择。
目前我在做个读取xml文件的练习demo。
假如第一个人读取操作远程主机上共享的xml文件的时候,第二个人再用该demo读取操作时给个提示,只能读,但是不能操作。

这个功能有点像office软件的排他机能。
例如:第一个人在操作远程主机上的excel文件的时候,第二个人再打开该excel文档,excel会弹出一个提示框,
提示该用户只能读取,要想操作该excel的话,必须在第一个人操作完,关闭该excel之后。

我之前有这样一个想法:在读取xml时,产生一个临时文件作为该xml是否被正在操作的标志位。个人感觉不大好。
office系列软件肯定不是这么做的。
我就想从加载xml文件的模式上入手,设想在加载时是否有操作的权限。

大家有没有好的想法。或者知道加载xml文件有模式之类的方法的。

[解决办法]
没发现MSXML有这样的参数!你可以去msdn搜索一下
[解决办法]
msxml 没有加载模式的开关参数。

如果加载一个不存在的xml文件,或是格式不规范的(unwell-formed)xml,msxml 对象抛出错误
dom.parseError.errorCode 与 dom.parseError.reason 可以获得错误的详细信息。

dom.save(path) 是保存的方法,默认是会覆盖原有文件的。

热点排行