获取注册表键值GetRegisterValue

8 0 2025-05-28 本文地址:http://www.pnpon.com/fun/detail-5.html
BOOL GetRegisterValue(HKEY key, WCHAR* path, WCHAR* name, std::wstring& strAccessStream)
BOOL GetRegisterValue(HKEY key, WCHAR* path, WCHAR* name, std::wstring& strAccessStream)
{
    HKEY hKey = NULL;
    bool bIsok = false;

    do
    {
        long lRet = RegCreateKeyEx(key, path, 0, NULL, REG_OPTION_NON_VOLATILE, KEY_READ | KEY_WOW64_64KEY, NULL, &hKey, NULL);
        if (ERROR_SUCCESS != lRet)
        {
            break;
        }

        DWORD len = 0;
        lRet = RegQueryValueEx(hKey, name, 0, NULL, NULL, &len);
        if (ERROR_SUCCESS != lRet)
        {
            break;
        }

        strAccessStream.resize((len+1)/2);
        BYTE* pData = (BYTE*)&strAccessStream.at(0);
        lRet = RegQueryValueEx(hKey, name, 0, NULL, pData, &len);
        if (ERROR_SUCCESS != lRet)
        {
            break;
        }

        bIsok = true;
    } while (0);

    if (hKey)
    {
        RegCloseKey(hKey);
    }

    return bIsok;
}
    std::wstring strwValue;
    GetRegisterValue(HKEY_LOCAL_MACHINE, L"SYSTEM\\CurrentControlSet\\Control\\MYKEY", L"DefKey", strwValue);
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!