BSTR類型的使用與VS2010的設置

在編寫刻錄機控制程序的過程當中,調用到的com組件的方法返回了不少BSTR類型的數據。直接輸出到控制檯,發現只是將變量的內存地址打印了出來。一番搜索,網上有不少轉換的方法。可是試來試去老是會報錯誤,錯誤以下:
 sql

  
  
  
  
  1. 錯誤  1   error LNK2019: 沒法解析的外部符號 "char * __stdcall _com_util::ConvertBSTRToString(wchar_t *)" (?ConvertBSTRToString@_com_util@@YGPADPA_W@Z),該符號在函數 _main 中被引用   E:\work\code\project\cpp\cpptrain\cpptrain\cpptrain\train.obj   cpptrain  

按照那些對BSTR類型作轉換的文章所述,須要引入comutil.h這個頭文件,而且連接入comsupp.lib。這些我都作了,以下:ide

  
  
  
  
  1. #include "comutil.h"  
  2. #pragma comment(lib, "comsupp.lib") 

但是依然報錯,按照錯誤查找才發現,須要修改vs的設置,將WChar_t視爲內置內省,修改成否,至於緣由爲什麼,本人C++水平處於起步階段暫時沒法贅述,以下:函數

相關文章
相關標籤/搜索