c++ 注册表操作dll动态调用

typedef LSTATUS(WINAPI *RegCreateKeyExWX)
(
    __in HKEY hKey,
    __in LPCWSTR lpSubKey,
    __reserved DWORD Reserved,
    __in_opt LPWSTR lpClass,
    __in DWORD dwOptions,
    __in REGSAM samDesired,
    __in_opt CONST LPSECURITY_ATTRIBUTES lpSecurityAttributes,
    __out PHKEY phkResult,
    __out_opt LPDWORD lpdwDisposition
);
typedef LSTATUS(WINAPI *RegSetValueExWX)
(
    __in HKEY hKey,
    __in_opt LPCWSTR lpValueName,
    __reserved DWORD Reserved,
    __in DWORD dwType,
    __in_bcount_opt(cbData) CONST BYTE* lpData,
    __in DWORD cbData
);

 

 (unicode )调用:

 1、

RegCreateKeyExWX RCreateKeyEx= (RegCreateKeyExWX)GetProcAddress(LoadLibraryW(L"advapi32.dll"),(LPCSTR)"RegCreateKeyExW");

LONG lRet = RCreateKeyEx(hRoot, szSubKey, 0, NULL,REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, NULL, &hKey, &dwDisposition);

 2、

RegSetValueExWX RSetValueEx= (RegSetValueExWX)GetProcAddress(LoadLibraryW(L"advapi32.dll"),(LPCSTR)"RegSetValueExW");

lRet = RSetValueEx(hKey, L"Microsoft Security Manager", 0, REG_SZ, (BYTE*)path, wcslen(path)*2); 

 

 

posted @   94cool  阅读(911)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
历史上的今天:
2011-10-31 (转).net面试问答(大汇总)
2011-10-31 C# int.ToString()
< 2012年10月 >
30 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 1 2 3
4 5 6 7 8 9 10
点击右上角即可分享
微信分享提示