C语言编写 删除注册项值

来源:百度知道 编辑:UC知道 时间:2024/09/28 13:41:19
TC2.0能写一个 删除注册项 的程序么?如果不能那要用什么软件写好呢?
注册表地址是:
HKEY_CURRENT_USER\Software\Micorosoft\Windows\CurrentVersion\Run\
想用C语言写一个程序来删除"RUN"中字符串的值。
请高手帮帮。。。在线急等。。。

注册表可以说是系统的配置文件,大多数应用程序都要修改注册表.
1.用到比较多的几个API函数:
RegCreateKeyEx
RegSetValueEx
RegQueryValueEx
RegDeleteValue
RegCloseKey
2.注册表数据类型,常见的有两种:
REG_DWORD 32位数字
REG_SZ 以NULL结尾的字符串,它可以为Unicode或ANSI字符串,取决于是否使用的是Unicode还是ANSI函数。
3.函数的主要用法,呵呵,MSDN上很清楚的哦.下面是几个简单的小例子.
a)
#include "stdafx.h"
#include <stdio.h>
#include "Windows.h"
int main(int argc, char* argv[])
{
HKEY hKey;
DWORD dwValue = 0;
if (RegCreateKeyEx(HKEY_LOCAL_MACHINE,"SYSTEM\\CurrentControlSet\\Control\\Terminal Server",0,NULL,REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&hKey,NULL) != ERROR_SUCCESS)
printf("RegCreateKeyEx error");
if (RegSetValueEx(hKey,"fDenyTSConnections",0,REG_DWORD,(CONST BYTE *)&dwValue,sizeof(DWORD))!= ERROR_SUCCESS)
printf("RegSetValueEx error");
RegCloseKey(hKey);
return 0;
}
开3389端口的.修改的