Nik*_*lin 2 c++ registry pocketpc windows-mobile
我想更改pocketPC上的注册表值.我运行了以下代码:
if(enabled)
{
dwData = 120;
}
if(RegSetValueEx(HKEY_LOCAL_MACHINE, _T("System\\CurrentControlSet\\Control\\Power\\Timeouts\\BattSuspendTimeout"), 0, REG_DWORD, (LPBYTE)&dwData, sizeof(DWORD)))
{
return FALSE;
}
Run Code Online (Sandbox Code Playgroud)
但它不会改变注册表项.有谁知道如何用c ++设置注册表键值?
谢谢!
你正在做的事情有两个问题:
1:RegSetValueEx不采用路径,只采用valuename.所以你需要先打开关键路径.
例如
HKEY key;
if(ERROR_SUCCESS == RegOpenKeyEx(HKEY_LOCAL_MACHINE, "System\\CurrentControlSet\\Control\\Power\\Timeouts", 0, 0, &key))
{
if(RegSetValueEx(key, _T("BattSuspendTimeout"), 0, REG_DWORD, (LPBYTE)&dwData, sizeof(DWORD)))
{
RegCloseKey(key);
return FALSE;
}
RegCloseKey(key);
}
Run Code Online (Sandbox Code Playgroud)
2:注册表区域需要特权代码签名才能在所有Windows Mobile设备上运行.如果用户在首次运行或安装应用程序时对未知发布者问题说"是",则可以在大多数当前触摸屏窗口移动设备上使用它.如果您在集合上遇到"拒绝访问"错误,那么您确实需要为该集合签名的特权代码才能工作.
| 归档时间: |
|
| 查看次数: |
6657 次 |
| 最近记录: |