请教大虾:
   如何使程序在系统启动时自动运行?我是指用注册表?

解决方案 »

  1.   

    procedure TFrmMain.SeSkinButton2Click(Sender: TObject);
    var
      Reg: TRegistry;
    begin
      Reg := TRegistry.Create;
      try
        Reg.RootKey := HKEY_CURRENT_USER;
        if Reg.OpenKey('\Software\Microsoft\Windows\CurrentVersion\RunOnce', True) then
       begin
          Reg.WriteString('MyApp','"' + ParamStr(0) + '"');
          Reg.CloseKey;
        end;
      finally
        Reg.Free;
        inherited;
      end;
    end;
      

  2.   

    在注册表中的run(启动)中
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx
      

  3.   

    来晚了:参考参考
        使用Regedit查找HKEY_LOCALMACHINE\Sodtware\Microsoft\Windows\CurrentVersion\Run,你会发现所有的Windows启动时调用的程序都在这里,于是你将你的程序增加在这里就可以了.名称为你的程序的标题,其值为你的程序的执行路径和文件名称.     如Interbase: 
         Interbase Server"D:\Program Files\Borland\IntrBase\BIN\ibserver.exe" 
          在程序中实现可以使用TRegIniFile或者使用TRegistry都可以.     User Registry;     Var 
            RegF:TRegistry; 
        begin 
             RegF:=TRegistry.Create; 
             RegF.RootKey:=HKEY_LOCAL_MACHINE; 
            try 
                  RegF.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Run',True); 
                  RegF.WriteString('Interbase Server','"D:\Program Files\Borland\IntrBase\BIN\ibserver.exe"'); 
                   except 
                        ... 
                    End; 
                    RegF.Close; 
                    RegF.Free; 
        end; 
      

  4.   

    1.程序自动启动
    打开注册表HKEY_LOCAL_MACHINE/SOFTWARE/MICROSOFT/WINDOWS/CURRENT/RUN
    在这里加入自己的程序的地址
    2.启动后隐藏程序主窗口,在操作系统任务栏上不显示,或者直接隐藏进程
    隐藏代码:
    procedure TForm1.FormCreate(Sender: TObject);
    begin
       SetWindowLong(Application.Handle,GWL_EXSTYLE,WS_EX_TOOLWINDOW);
    end;
    3.在程序中加入timer,在指定时间触发自己定义的事件
    procedure TForm1.Timer1Timer(Sender: TObject);
    begin
       if Now=时间 then
       begin
          //处理代码
       end;
    end;
      

  5.   

    如果想学更多的方法,请google<Windows自启动方式大全>
      

  6.   

    qxj() 所列基本正确.
    补充一点,Run是永远AutoRun,而RunOnce可就是Run One time了