99久久99久久精品免观看,国产精品久久久久国产精品,国产黄色录像视频,免费的黄色毛片,国产一区精品普通话对白,色妞妞成人在线观看,最新aⅴ福利在线观看免费

綠色資源網(wǎng):您身邊最放心的安全下載站! 最新軟件|熱門排行|軟件分類|軟件專題|廠商大全

綠色資源網(wǎng)

技術(shù)教程
您的位置:首頁電腦醫(yī)院系統(tǒng)故障 → Windows 7下找不到msxml.dll的錯(cuò)誤的解決方法

Windows 7下找不到msxml.dll的錯(cuò)誤的解決方法

我要評(píng)論 2014/03/06 11:11:30 來源:綠色資源網(wǎng) 編輯:m.siawh.com [ ] 評(píng)論:0 點(diǎn)擊:1573次

裝了windows7,并安裝了vs2005,其他工程沒有問題,但是構(gòu)建某個(gè)工程時(shí)卻出現(xiàn)了

error: can't find msxml.dll

在system32目錄下一找才發(fā)現(xiàn)原來確實(shí)沒有這個(gè)文件,從虛擬機(jī)的xp里拷了個(gè)過來,嘿嘿竟然編過了。

windows 7 還不是十分成熟,雖然比vista好用了不少,但要超過xp,還有很多細(xì)節(jié)需要完善。

解析XML文件使用到了微軟的msxml ,在xp下使用的時(shí)候,只要#import <msxml.dll>編譯就可以順利通過,

當(dāng)把工程移植到Vista上的時(shí)候就會(huì)遇到找不到msxml.dll的錯(cuò)誤。

原來在Vista上msxml.dll升級(jí)為msxml6.dll

只要把#import <msxml.dll>改成#import <msxml6.dll>

相應(yīng)using namespace MSXML改成using namespace MSXML2編譯即可通過

那么Vista下編譯后的可執(zhí)行文件是不是不可以在XP下使用呢?

網(wǎng)上的有種方法是:
#if (_WIN32_WINNT >= 0x0600)
#import <msxml6.dll>
#else
#import <msxml.dll>
#endif

這種做法是沒有必要的

下面是一位網(wǎng)友給出的解釋:

COM組件的使用方式,開發(fā)環(huán)境和運(yùn)行環(huán)境是不同的。開發(fā)環(huán)境要使用最新的SDK才能支持最新的操作系統(tǒng),所以要用#import msxml6.dll,但是到了運(yùn)行環(huán)境,程序并不會(huì)直接加載msxml6.dll,而是通過CoCreateInstance來加載的,傳遞的是PROGID或者CLSID,系統(tǒng)會(huì)在注冊(cè)表中找到對(duì)應(yīng)的dll文件,如果運(yùn)行在vista下,系統(tǒng)會(huì)幫你加載msxml6.dll,如果在xp環(huán)境下,系統(tǒng)幫你加載msxml.dll。但是程序不能使用IXmlDocument6,因?yàn)樵赬P環(huán)境下,msxml.dll并不支持這個(gè)版本。

這個(gè)特征是COM最基本的特征:保持二進(jìn)制兼容,即使組件版本升級(jí),也能在新環(huán)境下運(yùn)行舊版的程序,因?yàn)樾掳娼M件一定會(huì)保留舊版組件的接口。

關(guān)鍵詞:Windows7,msxml.dll,解決方法

閱讀本文后您有什么感想? 已有 人給出評(píng)價(jià)!

  • 6 歡迎喜歡
  • 22066 白癡
  • 6 拜托
  • 6 哇
  • 52 加油
  • 6 鄙視