VC操作注册表(转)

原创 2007年09月24日 15:12:00
 

1.VC读取注册表信息:

  HKEY hKEY;
  LPCTSTR data_Set="SOFTWARE//YeeTe//SMS";
  long ret5=(::RegOpenKeyEx(HKEY_LOCAL_MACHINE,data_Set, 0, KEY_WRITE|KEY_READ, &hKEY));
  //long ret0=::RegDeleteKey(hKEY,"sqlAddress");
  long ret0=::RegDeleteValue(hKEY,"sqlAddress");
  long ret1=::RegDeleteValue(hKEY,"sqlName");
  long ret2=::RegDeleteValue(hKEY,"sqlPwd");
  long ret3=::RegDeleteValue(hKEY,"smsName");
  long ret4=::RegDeleteValue(hKEY,"smsPwd");
  if(ret1!=ERROR_SUCCESS||ret2!=ERROR_SUCCESS||ret3!=ERROR_SUCCESS||ret4!=ERROR_SUCCESS)
  {
   AfxMessageBox("当前所用注册表键删除错误,请重试!");
  }

2.VC写注册表信息:

 HKEY hKEY;
 LPCTSTR data_Set="SOFTWARE//YeeTe//SMS";
 long ret0=(::RegOpenKeyEx(HKEY_LOCAL_MACHINE,data_Set, 0, KEY_READ, &hKEY));
 //查询sql地址
 LPBYTE sqlAdd_Get=new BYTE[80];
 DWORD type_1=REG_SZ ; DWORD cbData_1=80;
 long ret1=::RegQueryValueEx(hKEY, "sqlAddress", NULL, &type_1, sqlAdd_Get, &cbData_1);

 // 查询SQL用户名
 LPBYTE sqlName_Get=new BYTE [80];
 DWORD type_2=REG_SZ; DWORD cbData_2=80;
 long ret2=::RegQueryValueEx(hKEY, "sqlName", NULL,&type_2,sqlName_Get,&cbData_2);

 // 查询SQL密码
 DWORD cbData_3=80;
 LPBYTE sqlPass_Get=new BYTE [80];
 long ret3=::RegQueryValueEx(hKEY, "sqlPwd", NULL,&type_2,sqlPass_Get,&cbData_3);

 //查询SMS用户名
 DWORD cbData_4=80;
 LPBYTE smsName_Get=new BYTE [80];
 long ret4=::RegQueryValueEx(hKEY, "smsName", NULL,&type_2,smsName_Get,&cbData_4);

 //查询SMS密码
 DWORD cbData_5=80;
 LPBYTE smsPwd_Get=new BYTE [80];
 long ret5=::RegQueryValueEx(hKEY, "smsPwd", NULL,&type_2,smsPwd_Get,&cbData_5);

 if(ret0!=ERROR_SUCCESS||ret1!=ERROR_SUCCESS||ret2!=ERROR_SUCCESS||ret3!=ERROR_SUCCESS||ret4!=ERROR_SUCCESS||ret5!=ERROR_SUCCESS)
 {
  //AfxMessageBox("错误: 无法查询有关注册表信息!");
  CSmsDlg dlg;
  dlg.DoModal();
 }

VC检测Office版本

现在做的一个软件,里边用到了ActiveX控件,内嵌了Word,在安装Word的电脑运行是没问题的,但是在没有Word环境的电脑上就出问题,所以需要检测一下当前机器是否安装了Office,然后做出友好...
  • shenshen211
  • shenshen211
  • 2016年03月17日 17:05
  • 377

VC操作EXCEL 转

如今Excel是越来越重要了,在我们自己开发的程序中不免要和Excel打交道了。利用Automation技术,我们可以在不去了解数据库的情况下玩转Excel,而且你会发现一切竟如此轻松!    好了...
  • zhuminmailbox
  • zhuminmailbox
  • 2013年06月29日 00:29
  • 280

VC各种字符串转换

转自:网络 一.CString, int, string, char*之间的转换 string 转 CString CString.Format("%s", string.c_str());...
  • shellching
  • shellching
  • 2014年01月20日 10:19
  • 3589

详说vC++中 string之万能转换方法

C ++提供的由C++字符串得到对应的C_string的方法是使用data()、c_str()和copy(),其中, data()以字符数组的形式返回字符串内容,但并不添加’\0’。 c_str(...
  • ybhjx
  • ybhjx
  • 2017年04月28日 07:48
  • 827

VC中Ansi、Unicode、UTF8字符串之间的转换和写入文本

VC中Ansi、Unicode、UTF8字符串之间的转换和写入文本 Ansi字符串我们最熟悉,英文占一个字节,汉字2个字节,以一个\0结尾,常用于txt文本文件 Unicode字符串,每个字符(汉...
  • ruiqingzheng
  • ruiqingzheng
  • 2013年05月28日 20:39
  • 2146

VC操作MySQL数据库

首先下载mysql server,并安装,安装好之后,把include和lib设置一下。
  • SysProgram
  • SysProgram
  • 2014年09月18日 18:28
  • 2285

VC二进制byte数组转换成对应字符串

/**************************************************************************** 函数名称: str_to_hex 函数功...
  • slj_win
  • slj_win
  • 2014年03月12日 10:38
  • 4752

VC中 十六进制字符串转换为十进制数字 转

在程序中,我们有时需要将一个十六进制字符串转换为十进制数字。比如: char *ptr="0x11"; int n=0; //我们想让n等于0x11,即17 通常我们在C中,想将一个字符串...
  • xwdpepsi
  • xwdpepsi
  • 2013年09月26日 09:45
  • 1397

VC操作操作Word

一、首先在VC下建立简单的对话框程序,然后打开类向导,点右边的Add Class-》from a library,找到word的封装类库,一般在C:/Program Files/Microsoft O...
  • kervin521
  • kervin521
  • 2014年06月10日 22:02
  • 1135

VC字符串与整数、浮点数、无符号整数之间的转换常用函数

atof(将字符串转换成浮点型数) 表头文件 #include 定义函数 double atof(const char *nptr); 函数说明 atof()会扫描参数nptr字符串,跳过前面的空格...
  • phenixyf
  • phenixyf
  • 2013年09月17日 21:05
  • 2370
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:VC操作注册表(转)
举报原因:
原因补充:

(最多只允许输入30个字)