43 lines
1.5 KiB
C++
43 lines
1.5 KiB
C++
// Test.cpp : This file contains the 'main' function. Program execution begins and ends there.
|
|
//
|
|
|
|
#include <windows.h>
|
|
#include <iostream>
|
|
#include <shlwapi.h>
|
|
#include <Shlobj.h>
|
|
|
|
char* GetMachineGuid()
|
|
{
|
|
HKEY hk;
|
|
DWORD dwType = REG_SZ;
|
|
static BYTE guid[0x1028];
|
|
memset(guid, 0x00, 0x1028);
|
|
DWORD sz = 0x1028;
|
|
DWORD error = RegOpenKeyExW(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Cryptography", 0, KEY_QUERY_VALUE | KEY_WOW64_64KEY, &hk);
|
|
error = RegQueryValueExW(hk, L"MachineGuid", NULL, &dwType, guid, &sz);
|
|
RegCloseKey(hk);
|
|
return (char*)guid;
|
|
}
|
|
|
|
int main()
|
|
{
|
|
char szPath[MAX_PATH];
|
|
|
|
SHGetFolderPathA(NULL, CSIDL_LOCAL_APPDATA, NULL, 0, szPath);
|
|
printf("local %s\n", szPath);
|
|
SHGetFolderPathA(NULL, CSIDL_APPDATA, NULL, 0, szPath);
|
|
printf("common %s\n", szPath);
|
|
GetMachineGuid();
|
|
}
|
|
|
|
// Run program: Ctrl + F5 or Debug > Start Without Debugging menu
|
|
// Debug program: F5 or Debug > Start Debugging menu
|
|
|
|
// Tips for Getting Started:
|
|
// 1. Use the Solution Explorer window to add/manage files
|
|
// 2. Use the Team Explorer window to connect to source control
|
|
// 3. Use the Output window to see build output and other messages
|
|
// 4. Use the Error List window to view errors
|
|
// 5. Go to Project > Add New Item to create new code files, or Project > Add Existing Item to add existing code files to the project
|
|
// 6. In the future, to open this project again, go to File > Open > Project and select the .sln file
|