在WINDOWS 下的WIN.INI文件里有一个LOAD 和RUN 运行项!

解决方案 »

  1.   

    看你的系统目录下(windows 目录)有没有Start*.BAT文件,如果有的话,它会和Autoexec.Bat一样,在系统启动时就运行(^_^)!     好运~!~!
      

  2.   

    一个写到“启动”里的例子:
      unit  Unit1;
      
      interface
      
      uses
          Windows,  Messages,  SysUtils,  Variants,  Classes,  Graphics,  Controls,  Forms,
          Dialogs,  StdCtrls,  DdeMan;
      
      type
          TForm1  =  class(TForm)
              Button1:  TButton;
              Button2:  TButton;
              Edit1:  TEdit;
              Edit2:  TEdit;
              OpenDialog1:  TOpenDialog;
              DdeClientConv1:  TDdeClientConv;
              Label1:  TLabel;
              Label2:  TLabel;
              Label3:  TLabel;
              procedure  Button2Click(Sender:  TObject);
              procedure  Button1Click(Sender:  TObject);
          private
              {  Private  declarations  }
          public
              {  Public  declarations  }
          end;
      
      var
          Form1:  TForm1;
      
      implementation
      
      {$R  *.dfm}
      
      procedure  TForm1.Button2Click(Sender:  TObject);
      begin
      if  OpenDialog1.Execute  then
      Edit1.Text  :=  OpenDialog1.FileName;//获取可执行文件的文件名
      end;
      
      procedure  TForm1.Button1Click(Sender:  TObject);
      var
      Macro:string;
      Cmd  :  array[0..255]  of  Char;
      begin
      if  Edit1.Text=''  then//判断文件名是否为空
      begin
      MessageBox(Handle,'程序名称不可以为空。','错误',MB_OK+MB_ICONERROR);
      Exit;
      end;
      //打开"启动"程序项
      Macro:=Format('[CreateGroup(%s)]',['启动'])  +  #13#10;
      StrPCopy(Cmd,Macro);
      DdeClientConv1.OpenLink;
      if  DdeClientConv1.ExecuteMacro(Cmd,False)  =  False  then
      begin
      MessageBox(0,'打开启动程序项失败。','错误',MB_OK+MB_ICONERROR);
      Exit;
      end;
      Macro:=Format('[AddItem("%s",%s)]',[Edit1.Text,Edit2.Text])+#13#10;
      StrPCopy(Cmd,Macro);
      DdeClientConv1.OpenLink;
      //创建应用程序的快捷方式
      if  DdeClientConv1.ExecuteMacro(Cmd,False)  =  False  then
      begin
      MessageBox(0,'创建程序项失败。','错误',MB_OK+MB_ICONERROR);
      Exit;
      end;
      end;
      end.
      

  3.   

    1. Autostart 文件 
                C:\windows\start menu\programs\startup {chinese/english} 
                C:\windows\Menu D閙arrer\Programmes\D閙arrage {french} 
                在注册表中的位置: 
                HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell             Folders Startup="C:\windows\start menu\programs\startup" 
                所以它将很容易被程序更改             2. Win.ini 
                [windows] 
                load=file.exe 
                run=file.exe             3. System.ini [boot] 
                Shell=Explorer.exe file.exe             4. c:\windows\winstart.bat 
                看似平常,但每次都重新启动             5. Registry键 
                [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices]             [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce]             [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run] 
                [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce]             [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run] 
                [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce]             [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices] 
                6. c:\windows\wininit.ini 
                一旦运行就被windows删除,安装的setup程序常用 
                Example: (content of wininit.ini) 
                [Rename] 
                NUL=c:\windows\picture.exe 
                例子:将c:\windows\picture.exe设置为NUL, 表示删除它,完全隐蔽的执行!             7. Autoexec.bat 
                在DOS下每次自启动             8. Registry Shell Spawning (使用过Subseven吗?看看吧) 
                [HKEY_CLASSES_ROOT\exefile\shell\open\command] @="\"%1\" %*" 
                [HKEY_CLASSES_ROOT\comfile\shell\open\command] @="\"%1\" %*" 
                [HKEY_CLASSES_ROOT\batfile\shell\open\command] @="\"%1\" %*" 
                [HKEY_CLASSES_ROOT\htafile\Shell\Open\Command] @="\"%1\" %*" 
                [HKEY_CLASSES_ROOT\piffile\shell\open\command] @="\"%1\" %*" 
                [HKEY_LOCAL_MACHINE\Software\CLASSES\batfile\shell\open\command] 
                @="\"%1\" %*" 
                [HKEY_LOCAL_MACHINE\Software\CLASSES\comfile\shell\open\command] 
                @="\"%1\" %*" 
                [HKEY_LOCAL_MACHINE\Software\CLASSES\exefile\shell\open\command] 
                @="\"%1\" %*" 
                [HKEY_LOCAL_MACHINE\Software\CLASSES\htafile\Shell\Open\Command] 
                @="\"%1\" %*" 
                [HKEY_LOCAL_MACHINE\Software\CLASSES\piffile\shell\open\command] 
                @="\"%1\" %*"             这些"%1 %*"需要被赋值, 如果将其改为 "server.exe %1 %*", 
                server.exe将在每次启动时被执行,这些exe/pif/com/bat/hta等文件都可被执行             9. Icq Inet 
                [HKEY_CURRENT_USER\Software\Mirabilis\ICQ\Agent\Apps\test] 
                "Path"="test.exe" 
                "Startup"="c:\\test" 
                "Parameters"="" 
                "Enable"="Yes"             [HKEY_CURRENT_USER\Software\Mirabilis\ICQ\Agent\Apps\ 
                当icq发现网络连接时,将被执行(我使用的icq2000b的键值有所不同,但您可以自行查找) 
                您发现OICQ有这方面的问题吗?^_^...             9. 杂项说明 
                找找以下的键值: 
                [HKEY_LOCAL_MACHINE\Software\CLASSES\ShellScrap] 
                @="Scrap object" "NeverShowExt"=""
      

  4.   

    // 十处可供修改注册表:HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Run
    .../RunService     _
    .../RunOnce         |__(运行后系统自动删除)
    .../RunServiceOnce _|
    文件:
    win.ini [windows] load= (最小化运行)
    win.ini [windows] run=
    Autoexec.bat
    {windir}\winstart.bat
    目录:
    {windir}\start menu\programs\startup
    {windir}\All users\start menu\programes\startup