如何实现在win重新启动计算机时先执行你的程序?(100分)

  • 主题发起人 主题发起人 冰封
  • 开始时间 开始时间

冰封

Unregistered / Unconfirmed
GUEST, unregistred user!
如何实现在win重新启动计算机时先执行你的程序?
最好附代码。
 
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnce
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunServicesOnce
写代码
如果是NT/2000,可以写成服务。
 
同意楼上
 
问题是重新启动的消息怎么截获?
 
答非所问。看我的:
unit Unit1;

interface

uses
; Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
; Dialogs;

type
; TForm1 = class(TForm)
; private
; ; { Private declarations }
; public
; ; procedure WMEndSession(var msg:TWMEndSession);
; ; ;message wm_EndSession;
; end;

var
; Form1: TForm1;

implementation

{$R *.dfm}

{ TForm1 }

procedure TForm1.WMEndSession(var msg: TWMEndSession);
begin
; if msg.EndSession then
; begin
; ;showmessage('要关机了,先做点什么。。。');
; //...
; end;
; inherited;
end;

end.
 
我认为yzhshi说的对,
如果你想截获重起的消息,如果是非法重起怎么办??
写在注册表里就都ok了.
 
如果你的OS是NT or win2000那么你就写个服务那才是真正的启动计算机时先执行的程序
win98 写到HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnce
这下面也是启动后运行的
 
我不是要启动时运行,如果非法重起对我的目的不会有影响。
 
难道我的方法不行?
 
后退
顶部