ATL如何将BSTR*str转换为注册表项.SetValue(LPCTSTR str类型 自从我做C++以来,已经有好几年了,更不用说ATL代码< /P>了。
我有一种需要外科手术帮助的方法:( 这是一个移动应用程序,所以我不想使用CString和MFC 我需要将BSTR*str转换为正确的LPCTSTR类型,以便在registry Set.Value方法中使用ATL如何将BSTR*str转换为注册表项.SetValue(LPCTSTR str类型 自从我做C++以来,已经有好几年了,更不用说ATL代码< /P>了。,c++,string,atl,bstr,C++,String,Atl,Bstr,我有一种需要外科手术帮助的方法:( 这是一个移动应用程序,所以我不想使用CString和MFC 我需要将BSTR*str转换为正确的LPCTSTR类型,以便在registry Set.Value方法中使用 STDMETHODIMP CAXSampleCtl::SendMSG(BSTR* str) { CRegKey key; key.Create(HKEY_LOCAL_MACHINE, _T("MyKeyName")); key.SetValue( str <&
STDMETHODIMP CAXSampleCtl::SendMSG(BSTR* str)
{
CRegKey key;
key.Create(HKEY_LOCAL_MACHINE, _T("MyKeyName"));
key.SetValue( str <<<--- nope, _T("MyValueName"));
key.Flush();
key.Close();
return S_OK;
}
STDMETHODIMP caxsamplelectl::SendMSG(BSTR*str)
{
克雷基键;
创建(HKEY_LOCAL_MACHINE,_T(“MyKeyName”));
key.SetValue(strCOLE2T
宏仅适用于您,请参阅
要转换为BSTR,请将现有字符串传递给的构造函数
要从BSTR转换,请使用COLE2[C]DestinationType[EX],
比如COLE2T
为什么不直接用UNICODE定义的代码编译呢?