ole_db
驱动牛犊
驱动牛犊
  • 注册日期2002-11-27
  • 最后登录2002-12-16
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:911回复:4

关于注册表

楼主#
更多 发布于:2002-12-10 09:59
前辈们:
    Zw开头的那几个注册表涵数怎么用啊? 我这里总是报错,举个例子好吗?
ydyuse
驱动老牛
驱动老牛
  • 注册日期2002-07-25
  • 最后登录2005-03-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-12-10 10:12
有什么错?
UNICODE_STRING valname;
RtlInitUnicodeString(&valname, L\"ImagePath\");
size = 0;
status = ZwQueryValueKey(hkey, &valname, KeyValuePartialInformation, NULL, 0, &size);
  
生命驱动,活力无限!
ole_db
驱动牛犊
驱动牛犊
  • 注册日期2002-11-27
  • 最后登录2002-12-16
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-12-10 10:25



InitializeObjectAttributes(&objattr,&keyname,OBJ_EXCLUSIVE,NULL,NULL);
RetVal=ZwOpenKey(&hRun,KEY_ALL_ACCESS,&objattr);
其中keyname为\"HKLM\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\"

会报一个 0xc000003b的错误,谢谢
ydyuse
驱动老牛
驱动老牛
  • 注册日期2002-07-25
  • 最后登录2005-03-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-12-10 10:51



InitializeObjectAttributes(&objattr,&keyname,OBJ_EXCLUSIVE,NULL,NULL);
RetVal=ZwOpenKey(&hRun,KEY_ALL_ACCESS,&objattr);
其中keyname为\"HKLM\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\"

会报一个 0xc000003b的错误,谢谢

////////////////////////////////////////////////
不谢,解决了给分就行了。
好象用法有误,看看:
NTSTATUS DriverEntry(PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath)
{
  ...
  OBJECT_ATTRIBUTES oa;
  InitializeObjectAttributes(&oa, RegistryPath, 0, NULL, NULL);
  HANDLE hkey;
  status = ZwOpenKey(&hkey, KEY_READ, &oa);
  if (NT_SUCCESS(status))
  {
    ...
    ZwClose(hkey); <--3
  }
  ...
}
生命驱动,活力无限!
ZFDok
驱动牛犊
驱动牛犊
  • 注册日期2005-01-05
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分110分
  • 威望20点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-02-18 14:46
zw 开头的函数是怎么用的,在哪个头文件里面有定义啊,我不会用,现在想用它来删除注册表里面的ENUM下的子键,没有权限怎么删不掉呢?用RegDeleteKey 和 SHDeleteKey 不能删除。用ZW开头的函数就可以了呢?帮帮忙吧。谢谢了。
游客

返回顶部