开机运行及取消开机运行

 项目组要求把我们组的 软件做成开机自动自动运行的形式 我想 :那好实现阿
书上不时有源代码么。只要用代码修改注册表不就行了
  可是组长又说:有些用用户不想让咱们的软件开机运行 咱们可得考虑周到啊
我想了想 也是
      可是 问题出来了 我只会让他开机运行  至于如何取消 我还真的不知道
于是 我就上网查资料 
    查了好半天的资料 终于找到了 答案 但是 看过之后就觉得自己有点小蠢
自己应该可以做出来的啊
    不就是在form上加个checkbox 把它的caption属性该为 ‘开机运行’然后拉
个button 在它的click事件里 敲入这些代码
procedure TForm1.Button1Click(Sender: TObject);
var
regRegistry: TRegistry;

begin
regRegistry := TRegistry.Create;
try
regRegistry.RootKey := HKEY_LOCAL_MACHINE;
if regregistry.OpenKey('Software/Microsoft/Windows/CurrentVersion/Run',true) then
begin
        if checkbox1.Checked then
        regregistry.WriteString('即时网络新闻系                        统','application.exename' + ParamStr(0) + 'application.exename')
        else if regregistry.DeleteValue('即时网络新闻系统') then ;
      // 这里‘即时网络新闻系统’是主窗体的名字
        regregistry.CloseKey ;
        end;
finally
    regregistry.Free;
    inherited;
    end;
end;
再在FormCreate 里敲入如下的代码
procedure TForm1.FormCreate(Sender: TObject);
var
regRegistry: TRegistry;
begin
regRegistry := TRegistry.Create;
try
regRegistry.RootKey := HKEY_LOCAL_MACHINE;
if regregistry.OpenKey('Software/Microsoft/Windows/CurrentVersion/Run',true) then
begin
        if regregistry.ValueExists('即时网络新闻系统') then
        begin
        checkbox1.Checked :=true;
        end
        else checkbox1.Checked :=false;
        regregistry.CloseKey ;
        end;
finally
    regregistry.Free;
    inherited;
    end;
end;
当然 此时你点击 Ctrl+F9 它会运行出错 那时因为  这个程序涉及到 注册表编程
只要在 uses语句中引用 'Registry'就可以了~~

               
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值