1
error C2664: 'MessageBoxW' : cannot convert parameter 3 from 'const char [22]' to 'LPCWSTR'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
私は上記のようにこのコードを実行してエラーを取得しようとしています。const char [22] '〜' LPCWSTR '
bool RegistryHandler::readRegistryEntry(String^ referencePath, String^ keyName, String ^keyValue)
{
HKEY keyHandle;
LPCTSTR sk = TEXT("SOFTWARE\\Microsoft\\Office\\Outlook\\Addins\\GoToApp");
wchar_t rgValue [1024];
wchar_t fnlRes [1024];
DWORD size1;
DWORD Type;
if(RegOpenKeyEx(HKEY_CURRENT_USER, sk,0,KEY_QUERY_VALUE, &keyHandle) == ERROR_SUCCESS)
{
size1=1023;
RegQueryValueEx(keyHandle,L"ApplicationUrl", NULL, &Type,(LPBYTE)rgValue,&size1);
MessageBoxW(NULL,L"inside for readindg",L"Native Addin",MB_OK);
MessageBoxW(NULL,rgValue, "Product ID of Windows", MB_OK);
}
else {
MessageBoxW(NULL,L"inside for else",L"Native Addin",MB_OK);
}
RegCloseKey(keyHandle);
return true ;
}
正しくrgvalueを取得する方法???
PLSEは、VC++
あなたが「のWindowsプロダクトID」の前に「L」を逃している – PhilMY
rgValueが可変である..私はそのコード を実行するために、直接LのTREを追加カント私はそれを変換する必要があります表示する。 – zytham
MessageBoxW(NULL、rgValue、L "WindowsのプロダクトID"、MB_OK); – PhilMY