用msxml.dll的时候,发现在windows 7下编译不通过。
问题语句是:
// import MSXML
#import <msxml.xml>
原因是在windows 7下没有msxml.dll文件。
一种方式是到xp下把msxml拷贝到windows7下进行注册。
第二种方式就是定义宏来分别引用:
#if (_WIN32_WINNT >= 0x0600) //if vista
#import "msxml6.dll"
#else //if xp
#import "msxml.dll"
#endif
以上两种方式没试过。
另外一种方式就是把import <msxml.dll> 改成
#import <msxml.tlb>
这样,编译器会自动去找msxml对应的com信息。
#import 指令(vc++) 写道
#import 指令
1. C++中使用 COM 簡單的方法是用 #import 導入 type library
2. # import 指令將 COM 產生對應的 C++類別,可以用接近於VBScript和Visual Basic的語句操作 COM
3. 使用 #import 命令就可以將該文件導入到我們的程式碼中。type library 的內容將被轉換為描述了 COM Interface 的 COM smart pointer
4. 語法
#import "filename" [attributes]
#import <filename> [attributes]
attributes:
用來通知編譯器修改 type library header 的內文。可以使用空白或逗號分隔 attribute。該選項為選擇性。
1. C++中使用 COM 簡單的方法是用 #import 導入 type library
2. # import 指令將 COM 產生對應的 C++類別,可以用接近於VBScript和Visual Basic的語句操作 COM
3. 使用 #import 命令就可以將該文件導入到我們的程式碼中。type library 的內容將被轉換為描述了 COM Interface 的 COM smart pointer
4. 語法
#import "filename" [attributes]
#import <filename> [attributes]
attributes:
用來通知編譯器修改 type library header 的內文。可以使用空白或逗號分隔 attribute。該選項為選擇性。
参考网站:
解决msxml.dll的钱两种方式:
http://blog.163.com/caty_nuaa/blog/static/903907201031253936554/
tlb的解决方案:
http://hi.baidu.com/icyday315/blog/item/56812314ee97a103962b43dc.html