c语言一段代码错误修改 5

#include<string.h>#include<windows.h>#include<stdio.h>intmain(){charregname[]="Softwa... # include <string.h>
# include <windows.h>
# include <stdio.h>
int main()
{

char regname[]="Software\\Microsoft\\Windows\\CurrentVersion\\Run"; /*开机启动路径*/
HKEY hkResult;
int ret=RegOpenKey(HKEY_LOCAL_MACHINE,regname,&hkResult);
ret=RegSetValueEx(hkResult,"jjj",0,REG_EXPAND_SZ,(unsigned char "c:\for.exe"/,25);
if(ret==0)
{
printf("success to write run key\n");
RegCloseKey(hkResult);
}
else
{
printf("failed to open regedit.%d\n",ret);
return 0;
}
}

这段代码是修改注册表的代码 里面的ret=RegSetValueEx(hkResult,"jjj",0,REG_EXPAND_SZ,(unsigned char "c:\for.exe"/,25);
这一句显示有错误 帮忙改一下,改成正确的
展开
 我来答
来自布达拉宫有才能的喜羊羊
2014-09-08 · 超过15用户采纳过TA的回答
知道答主
回答量:20
采纳率:0%
帮助的人:28.9万
展开全部
RegSetValueEx第5个参数定义错误,如下:可以正确编译通过。
# include <string.h>
# include <windows.h>
# include <stdio.h>
int main()
{

char regname[]="Software\\Microsoft\\Windows\\CurrentVersion\\Run"; /*开机启动路径*/
HKEY hkResult;
unsigned char p[]="c:\\for.exe";
unsigned char *q;
q=(unsigned char *)&p;//强制转换
int ret=RegOpenKey(HKEY_LOCAL_MACHINE,regname,&hkResult);
ret=RegSetValueEx(hkResult,"jjj",0,REG_EXPAND_SZ,q,25);
if(ret==0)
{
printf("success to write run key\n");
RegCloseKey(hkResult);
}
else
{
printf("failed to open regedit.%d\n",ret);
return 0;
}
}

忘采纳。。
2268abc
2014-09-08 · TA获得超过168个赞
知道答主
回答量:107
采纳率:100%
帮助的人:116万
展开全部
把17和20行的后边改为 Sqlist[i].xuehao
请采纳答案,支持我一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hxl987690183
2014-09-08
知道答主
回答量:18
采纳率:0%
帮助的人:11.5万
展开全部
你试一下把 c:\for.exe 改成 c:\\for.exe.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式