注册表编程~~删除键值。不会删。。

jiafeilaogong 2010-06-06 04:48:57
想删除HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NWCWorkstation\Parameters下的ServiceDll里面的这个值


char path[200];
lstrcpy(path, "SYSTEM\\CurrentControlSet\\Services\\NWCWorkstation\\Parameters\\ ");
HKEY hRootKey;
LONG lRet=RegOpenKeyEx(HKEY_LOCAL_MACHINE,path,0,KEY_ALL_ACCESS,&hRootKey);
if(lRet==ERROR_SUCCESS)
{
MessageBox( NULL,"open the key run success ",NULL,NULL);
}
else
{
MessageBox(NULL,"false",NULL,NULL);
}

return 0;

...全文
187 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiafeilaogong 2010-06-06
  • 打赏
  • 举报
回复
。。。很难给分啊~~这么多朋友都帮我了~在这里谢谢大家帮我这个菜鸟。。分就给第一个了。。。
一条晚起的虫 2010-06-06
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 wuweiyin 的回复:]
引用 11 楼 lfchen 的回复:
// 你的IDE居然不支持_T()宏?
// 真的不支持的话,去掉好了。
lRet=RegDeleteValue(hRootKey, "ServiceDll");

朋友,_T()这个宏有什么作用?我从来都没用过,只看别人的代码中有。
[/Quote]

//兼容MBCS和unicode工程用的。
// 如果是unicode _T("") = L"";
// MBCS _T("") = "";
wuweiyin 2010-06-06
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 lfchen 的回复:]
// 你的IDE居然不支持_T()宏?
// 真的不支持的话,去掉好了。
lRet=RegDeleteValue(hRootKey, "ServiceDll");
[/Quote]
朋友,_T()这个宏有什么作用?我从来都没用过,只看别人的代码中有。
wuweiyin 2010-06-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 xuddk727 的回复:]
我有个写好的DLL,专门封装了注册表操作,你贴下邮箱发你
[/Quote]
也发我一份,谢谢!wuweiyin@163.com
jiafeilaogong 2010-06-06
  • 打赏
  • 举报
回复
....VC6.0
一条晚起的虫 2010-06-06
  • 打赏
  • 举报
回复
// 你的IDE居然不支持_T()宏?
// 真的不支持的话,去掉好了。
lRet=RegDeleteValue(hRootKey, "ServiceDll");
jiafeilaogong 2010-06-06
  • 打赏
  • 举报
回复
嗯~忘记了。谢谢。。error C2065: '_T' : undeclared identifier。。这个怎么解决、、未定义、、
一条晚起的虫 2010-06-06
  • 打赏
  • 举报
回复
//lRet=RegDeleteValue(hRootKey,_T("ServiceDll")); //少了个")"吧
jiafeilaogong 2010-06-06
  • 打赏
  • 举报
回复
char path[200];
lstrcpy(path, "SYSTEM\\CurrentControlSet\\Services\\NWCWorkstation\\Parameters");
HKEY hRootKey;
LONG lRet=RegOpenKeyEx(HKEY_LOCAL_MACHINE,path,0,KEY_ALL_ACCESS,&hRootKey);
if(lRet==ERROR_SUCCESS)
{
MessageBox( NULL,"open the key run success ",NULL,NULL);
}
else
{
MessageBox(NULL,"false",NULL,NULL);
}

lRet=RegDeleteValue(hRootKey,_T("ServiceDll");
if(lRet==ERROR_SUCCESS)
{
MessageBox( NULL,"open the key run success ",NULL,NULL);
}
else
{
MessageBox(NULL,"false",NULL,NULL);
}

return 0;


Compiling...
注册表编程.cpp
E:\sdk\注册表编程1\注册表编程.cpp(39) : error C2065: '_T' : undeclared identifier
E:\sdk\注册表编程1\注册表编程.cpp(39) : error C2143: syntax error : missing ')' before ';'

晕了~~请大家帮下
一条晚起的虫 2010-06-06
  • 打赏
  • 举报
回复
//删除key的值
RegDeleteValue()
//删除key
RegDleteKey()
jiafeilaogong 2010-06-06
  • 打赏
  • 举报
回复
cenxukai@126.com
谢谢了大家
xiaogui32 2010-06-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 xuddk727 的回复:]
我有个写好的DLL,专门封装了注册表操作,你贴下邮箱发你
[/Quote]
3楼能提供源码吗?我邮箱396622525#qq.com
#换成@
zyq5945 2010-06-06
  • 打赏
  • 举报
回复
lstrcpy(path, "SYSTEM\\CurrentControlSet\\Services\\NWCWorkstation\\Parameters");
许文君 2010-06-06
  • 打赏
  • 举报
回复
我有个写好的DLL,专门封装了注册表操作,你贴下邮箱发你
jiafeilaogong 2010-06-06
  • 打赏
  • 举报
回复
哦~上面那个打开的键值。。貌似也不行
zyq5945 2010-06-06
  • 打赏
  • 举报
回复
有个注册表封装类,你搜下,VS2008SP1也有CRegKey这个封装类。
lRet=RegDeleteValue(hRootKey,_T("ServiceDll"); 
if(lRet==ERROR_SUCCESS)
{
MessageBox( NULL,"open the key run success ",NULL,NULL);
}
else
{
MessageBox(NULL,"false",NULL,NULL);
}

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧