#include #include #define BUFFER_SIZE 1024 int main() { HKEY hKey; DWORD dwType, dwSize; TCHAR szValue[BUFFER_SIZE]; // レジストリキーを開く if (RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("SOFTWARE\\MyApp"), 0, KEY_QUERY_VALUE, &hKey) != ERROR_SUCCESS) { printf("Failed to open registry key\n"); return 1; } // REG_EXPAND_SZ型のデータを取得する dwSize = sizeof(szValue); if (RegQueryValueEx(hKey, TEXT("MyKey"), NULL, &dwType, (LPBYTE)szValue, &dwSize) != ERROR_SUCCESS) { printf("Failed to query registry value\n"); RegCloseKey(hKey); return 1; } // 取得したデータを表示する if (dwType == REG_EXPAND_SZ) { #ifdef UNICODE printf("Data: %ls\n", szValue); // Unicodeの場合 #else printf("Data: %s\n", szValue); // マルチバイトの場合 #endif } // レジストリキーを閉じる RegCloseKey(hKey); return 0; }