社区
C++ Builder
帖子详情
无法完成的任务?
clasj
2002-12-28 11:26:27
我想编一个简单的修改注册表的程序,前提是知道注册表的键位与键值.
思路是这样的:
在Edit1中输入注册表键位.如:HKEY_CURRENT_USER\Control Panel\Desktop
在Edit2中输入注册表键值.如:PaintDesktopVersion="0"
点击Button1完成修改.
你认为这样可能吗?怎样实现?
如果你认为不可能该如何改进呢?
...全文
42
7
打赏
收藏
无法完成的任务?
我想编一个简单的修改注册表的程序,前提是知道注册表的键位与键值. 思路是这样的: 在Edit1中输入注册表键位.如:HKEY_CURRENT_USER\Control Panel\Desktop 在Edit2中输入注册表键值.如:PaintDesktopVersion="0" 点击Button1完成修改. 你认为这样可能吗?怎样实现? 如果你认为不可能该如何改进呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
clasj
2002-12-29
打赏
举报
回复
我再怀也知道TRegistry这个类撒,有本事把代码写出来!
wangxiangsjz
2002-12-29
打赏
举报
回复
同上。
ilikeff8
2002-12-29
打赏
举报
回复
你只是不知道有TRegistry这个类而已,如果连这都无法完成,borland公司倒闭算了
invalid
2002-12-29
打赏
举报
回复
LiBran中了激将法了。对太懒的人,这样不好。
Libran
2002-12-29
打赏
举报
回复
按你的要求的代码:(在界面上放两个Edit和一个Button)
#include <Registry.hpp>
void __fastcall TForm1::Button1Click(TObject *Sender)
{
//从Edit1->Text中分离出根键、键位
int p = Edit1->Text.Pos("\\");
AnsiString RootKey = Edit1->Text.SubString(1, p-1);//获得根键
AnsiString KeyPos = Edit1->Text.SubString(p+1, Edit1->Text.Length()-p);//键位
//从Edit2->Text中分离出键名、键值
p = Edit2->Text.Pos("=");
AnsiString KeyName = Edit2->Text.SubString(1, p-1);//键名
AnsiString KeyValue = Edit2->Text.SubString(p+1, Edit1->Text.Length()-p);//键值
TRegistry *reg = new TRegistry();
//由于RootKey不能以字符串来赋值,只好麻烦一点儿,判断后赋值(我只判断了三个)
if (RootKey=="HKEY_USERS") reg->RootKey = HKEY_USERS;
if (RootKey=="HKEY_LOCAL_MACHINE") reg->RootKey = HKEY_LOCAL_MACHINE;
if (RootKey=="HKEY_CURRENT_USER") reg->RootKey = HKEY_CURRENT_USER;
reg->OpenKey(KeyPos, true);//打开指定键位,true表示不存在则创建该键
reg->WriteString(KeyName, KeyValue); //写入键名、键值,不存在时会自动创建;这里是当做字串值来写的
}
运行后:
在Edit1中输入注册表键位.如:HKEY_CURRENT_USER\Control Panel\Desktop
在Edit2中输入注册表键值.如:PaintDesktopVersion="0"
点击Button1完成修改.
Libran
2002-12-28
打赏
举报
回复
用四个Edit,分别对应根键、键位、键名、键值,还要有一个BomboBox指出类型
然后就可以:
TRegistry *reg = new TRegistry();
reg->RootKey = 根键;
reg->OpenKey(键位);
reg->WirteString(键名, 键值); //类型为字串值
reg->WriteInteger(键名, 键值); //类型为双字节值
。。。
invalid
2002-12-28
打赏
举报
回复
这怎么不可能了。又那标题唬人。
自己看看help应该能写的出来。
项目管理 - 团队成员
无法
按期
完成
任务
怎么办?
团队成员
无法
按期
完成
任务
怎么办? 这是最近和朋友在圈子里面的一些讨论,针对的主题是:团队成员
无法
按期
完成
任务
怎么办?估计项目经理都会遇到团队成员
无法
按期
完成
任务
的情况。我们这里分析的是已经发生的时候的...
为什么要使用Interface,而不是直接使用一个实体类来
完成
任务
?Interface和Impl这种方式的好处是什么?
【为什么要使用Interface,而不是直接使用一个实体类来
完成
任务
?Interface和Impl这种方式的好处是什么?】 大家好,我是IT修真院深圳分院第13期的学员,一枚正直纯洁善良的java程序员 今天给大家分享一下,修真院...
项目组成员总是
无法
完成
任务
,咋办?
计划做得挺好,我们却常常碰到
无法
按计划
完成
任务
的情况。尤其是某些人经常
无法
按计划
完成
任务
,咋办? 一、原因 1、能力问题。某些人不具备
完成
任务
的能力,具体表现在人不适岗。 2、态度问题。人心不齐,没有...
(详解)js中什么是宏
任务
、微
任务
?宏
任务
、微
任务
有哪些?又是怎么执行的?
(详解)js中什么是宏
任务
、微
任务
?宏
任务
、微
任务
有哪些?又是怎么执行的?
线程池
任务
调度:新建线程处理阻塞队列溢出
任务
还是最早
任务
?
当线程池中核心线程都被占用,且阻塞队列已满时,再有新
任务
会触发线程的新建。执行的
任务
是从阻塞队列中取出最早进入的
任务
,还是直接执行刚刚新进来
无法
放入队列的
任务
呢?
C++ Builder
13,873
社区成员
102,696
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章