就是我想用c语言编写一个能修改注册表自动启动的程序,下面是代码!!当然是错的,还有很多地方需要改进!!刚学!郁闷了,总是提示错误!!
#include <stdio.h>
#include <stdlib.h>
int main()
{
int autorun_register(const char *exe_filename);
FILE *fp;
if((fp=fopen("E:\\应用程序\\kwmusic2010.exe","r"))==NULL)
{
printf("cannot open file\n");
exit(0);
}
autorun_register("E:\\应用程序\\kwmusic2010.exe");
system("PAUSE");
return 0;
}
int autorun_register(const char *exe_filename)
{
//修改注册表,开机启动
int return_value=0;
HKEY hroot = HKEY_LOCAL_MACHINE,hkey;
const char *subkey = "Software\\Microsoft\\Windows\\CurrentVersion\\Run";
DWORD dwDisposition;
long result=RegCreateKeyEx(
hroot,
subkey,
0,
NULL,
REG_OPTION_NON_VOLATILE,
KEY_ALL_ACCESS,
NULL,
&hkey,
&dwDisposition
);
if(result==ERROR_SUCCESS)
{
result=RegSetValueEx(
hkey,
"病毒",
0,
REG_SZ,
(CONST BYTE *)exe_filename,
(DWORD)strlen(exe_filename)
);
if(result!=ERROR_SUCCESS)return_value=-1;
RegCloseKey(hkey);
}
else return_value=-1;
if(!return_value)printf("开机启动注册成功!\n");
else printf("开机启动注册失败...\n");
return return_value;
}
帮我修改一下,能改进为将运行的本程序添加到自启动项更好!
繁华开满天机
猛跑小猪