我需要使用C#和P/Invoke的(RapiDll不在那里)写入注册表使用的P/Invoke
我知道如何阅读的关键在于改变WindowsCE的一个系统登录值:
private static string ReadRegKey(UIntPtr rootKey, string keyPath, string valueName,string value)
{
IntPtr hKey = IntPtr.Zero;
if (RegOpenKeyEx(rootKey, keyPath, 0, KEY_READ, out hKey) == 0)
{
uint size = 1024;
uint type = 0;
string keyValue = null;
StringBuilder keyBuffer = new StringBuilder();
keyBuffer.Append(value);
if (RegQueryValueEx(hKey, valueName, IntPtr.Zero, ref type, keyBuffer, ref size) == 0)
keyValue = keyBuffer.ToString();
RegCloseKey(hKey);
return (keyValue);
}
return (null); // Return null if the value could not be read
}
任何人都可以帮助我吗? (这是为了改变设备名称btw)
我试过这种方式,它不断给我提供无法访问的访问权限。也许这是我需要使用P/Invoke方法? – Zarkos 2011-05-06 07:19:32
Oké所以我这样做:)我没有看到,真正的OpenSubKey背后。我搜索了几个小时,为什么我无法改变这个价值。 – Zarkos 2011-05-06 07:42:53