CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

请问如何往注册表中写入二进制数

楼主Hackerhell(DDoS)2003-09-02 00:00:55 在 VC/MFC / 基础类 提问

/*根键位置:  
  HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer  
  修改内容:  
  在右边的窗口中新建一个二进制值“NoViewContextMenu”,并设值为“01   00   00   00”。  
  效果:  
  修改后需重新启动WINDOWS,启动后,你将不能在桌面,驱动器,文件夹等地方使用鼠标右键      
  */  
  #include<windows.h>  
  #include<iostream.h>  
  void   main()  
  {  
  LPCTSTR   hSubKey="Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer";  
  HKEY   hResult=NULL;  
  DWORD   dwDisposition=0;  
  long     nResult=RegCreateKeyEx(HKEY_CURRENT_USER,hSubKey,0,NULL,\  
  REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&hResult,&dwDisposition);  
  if(nResult==ERROR_SUCCESS)  
  {  
  LPCTSTR   szName="NoViewContextMenu";  
  LPCTSTR   szValue="????????????";//应该如何写呢  
  long   nResult=RegSetValueEx(hResult,szName,0,REG_BINARY,reinterpret_cast<CONST   BYTE*>(szValue),strlen(szValue));  
  }  
  }  
  问题点数:0、回复次数:4Top

1 楼bcpl(林平之)回复于 2003-09-02 00:49:23 得分 0

据我所知,NoViewContextMenu为DWORD值,不是BIN型的  
   
  #include<windows.h>  
  #include<iostream.h>  
  void   main()  
  {  
          LPCTSTR   hSubKey="Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer";  
          HKEY   hResult=NULL;  
          DWORD   dwDisposition=0;  
          long     nResult=RegCreateKeyEx(HKEY_CURRENT_USER,hSubKey,0,NULL,\  
                                                  REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&hResult,&dwDisposition);  
          if(nResult==ERROR_SUCCESS)  
          {  
                  LPCTSTR   szName="NoViewContextMenu";  
                  cout   <<   "!"   <<   endl;  
                  DWORD   dwValue   =   1;  
                  long   nResult   =   RegSetValueEx(hResult,   szName,   0,   REG_DWORD,    
                                                          (const   BYTE*)&dwValue,   sizeof(dwValue));  
          }  
          RegCloseKey(hResult);  
  }  
  Top

2 楼Hackerhell(DDoS)回复于 2003-09-02 23:23:46 得分 0

那如果要写入二进制呢?  
  该如何写Top

3 楼bcpl(林平之)回复于 2003-09-03 00:00:49 得分 0

#include   "stdafx.h"  
  #include<windows.h>  
  #include<iostream.h>  
  void   main()  
  {  
          LPCTSTR   hSubKey="Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer";  
          HKEY   hResult=NULL;  
          DWORD   dwDisposition=0;  
          long     nResult=RegCreateKeyEx(HKEY_CURRENT_USER,hSubKey,0,NULL,\  
                                                  REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&hResult,&dwDisposition);  
          if(nResult==ERROR_SUCCESS)  
          {  
                  LPCTSTR   szName="NoViewContextMenu";  
                   
                  DWORD   dwValue   =   1;  
                  int   nArray[5]   =   {1,   2,   3,   4,   5};  
                   
                  RegSetValueEx(hResult,   szName,   0,   REG_BINARY,         //   写二进制数据  
                          (const   BYTE*)nArray,   sizeof(nArray));  
   
                  DWORD   dwType   =   0;  
                  DWORD   dwSize   =   5;  
                  int   nArr1[5]   =   {   0   };  
                  RegQueryValueEx(hResult,   szName,   0,   NULL,   (BYTE*)nArray,   &dwSize);  
   
          }  
          RegCloseKey(hResult);  
  }  
  Top

4 楼bcpl(林平之)回复于 2003-09-03 00:04:29 得分 0

后面有错误  
  DWORD   dwType   =   0;  
  int   nArr1[5]   =   {   0   };  
  DWORD   dwSize   =   sizeof(nArr1);  
  RegQueryValueEx(hResult,   szName,   0,   NULL,   (BYTE*)nArr1,   &dwSize);Top

相关问题

  • 请问各位:如何往注册表里写入二进制和十六进制?
  • 如何在注册表里面写入二进制数据
  • 如何向注册表中写入二进制文件?
  • 再问关于把二进制(一长串)写入注册表。
  • 谁能给我一个写入二进制注册表的列子?
  • 关于注册表中二进制数据的读出写入问题?
  • 请问如何写入注册表 DWORD,二进制,默认等值,高分,高分!!!
  • 急!读写注册表中的二进制数据!
  • 怎样把二进制写进注册表?
  • ?如何将二进制的 值写如注册表?

关键词

  • 二进制
  • software
  • access
  • noviewcontextmenu
  • dwdisposition
  • hsubkey
  • narr1
  • hresult
  • szname
  • nresult

得分解答快速导航

  • 帖主:Hackerhell

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo