這是我需要轉換BSTR到LPCWSTR
BSTR l_strArgs;
LPCWSTR sth;
//----
//---
OutputDebugStringW(sth);
如何轉換BSTR到LPCWSTR?
是否有任何標題只有庫將任何字符串類型(微軟)轉換爲LPCWSTR類型?
這是我需要轉換BSTR到LPCWSTR
BSTR l_strArgs;
LPCWSTR sth;
//----
//---
OutputDebugStringW(sth);
如何轉換BSTR到LPCWSTR?
是否有任何標題只有庫將任何字符串類型(微軟)轉換爲LPCWSTR類型?
剛好蓋住NULL
的情況,你是好去
BSTR l_strArgs;
LPCWSTR sth = strArgs ? strArgs : L"";
至於你提到的標籤ATL,這裏是ATL風格的一行:
OutputDebugString(CString(l_strArgs));
,或者使確定你在Unicode域中:
OutputDebugStringW(CStringW(l_strArgs));
當你使用類似_bs的包裝時,BSTR變得更容易處理而不是tr_t。這裏是他們的微軟文檔 http://msdn.microsoft.com/en-us/library/zthfhkd6%28v=VS.100%29.aspx
正如你所料,其中一個_bstr_t構造函數需要一個BSTR參數。還有一個操作符返回一個const wchar_t *,你應該可以將它轉換爲LPCWSTR。
希望這有助於
我剛剛發現這個一個
BSTR l_strArgs;
LPCWSTR sth;
CString cs(_com_util::ConvertBSTRToString(l_strArg));
sth = cs;
OutputDebugStringW(sth);
的可能重複[ATL如何轉換BSTR \ * STR註冊表key.SetValue(LPCTSTR STR型(HTTP://計算器.COM /問題/ 7654998/ATL-如何對轉換-BSTR-STR對註冊表鍵setvaluelpctstr-STR型) –