初学者请教!(100分)

  • 主题发起人 主题发起人 nicefeel
  • 开始时间 开始时间
N

nicefeel

Unregistered / Unconfirmed
GUEST, unregistred user!
请问向注册表里写入双字节(dword)的键值,用那个函数?
提供相关的资料也可以!非常感谢!
 
RegSetValueEx
 
我怎么什么也看不到?[:(][:(!][?]
 
你应该知道怎么打开并写注册表了吧,那么如果你想写DWord类型的,就用WriteInteger,见下面的例子
注意:前面Uses的单元一定要加上Registry
procedure TForm1.Button1Click(Sender: TObject);
var
; Reg: TRegistry;
begin
; Reg := TRegistry.Create;
; try
; ; Reg.RootKey := HKEY_CURRENT_USER;
; ; if Reg.OpenKey('/Software/Borland',
True)
; ; then Reg.WriteInteger('Try',$ABCDEF);
; finally
; ; Reg.CloseKey;
; ; Reg.Free;
; ; inherited;
; end;
end;
end.
 
我是想通过一个edit的组件,通过修改edit1.text里的内容来修改注册表中的一个dword的值!但编译时显示incompatible types:"integer"and"tCaption"中如何将两者的数据类型统一起来?非常感谢!
另:为什么我无法看到论坛里帖子的内容?我是通过e-mail才看到的?有人知道吗?能告诉我为什么吗?谢谢!
 
看不到论坛帖子内容,请你使用稳重型的界面(从论坛入口处选择),就是兰色的那个,因为你的IE版本低于5.5,如果想使用热情型,那么
就要升级你的IE。
你的Edit1.Text是字符类型的,需要这样写:
procedure TForm1.Button1Click(Sender: TObject);
var
; Reg: TRegistry;
begin
; Reg := TRegistry.Create;
; try
; ; Reg.RootKey := HKEY_CURRENT_USER;
; ; if Reg.OpenKey('/Software/Borland',
True)
; ; then Reg.WriteInteger('Try',StrToInt(EDIT1.TEXT));//注意这里!!!!!!
; finally
; ; Reg.CloseKey;
; ; Reg.Free;
; ; inherited;
; end;
end;
end.
 
原来不是很难呀?这分赚得~~[^]
 
如果我想让edit.text里输入的数字做些限制,比如只能输入1-40之间的数字,如果输入
其它的数字或者字符时就会弹出个框,这种在程序中应该如何实现?

我已经找到解决的方法了!感谢DFW,这里真不错呀,我怎么现在才发现!!哈哈哈
 
你可以在Edit的OnChange事件里面写代码,判断Edit的内容,就可以了。
弹出的提示框可以用MessageBOX来实现,具体格式参考帮助。
例:MessageBox(0,'对不起,您的输入有误!','提示',MB_ICONINFORMATION+MB_OK+MB_TASKMODAL)
 

Similar threads

S
回复
0
查看
831
SUNSTONE的Delphi笔记
S
S
回复
0
查看
790
SUNSTONE的Delphi笔记
S
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
915
SUNSTONE的Delphi笔记
S
后退
顶部