如题
解决方案 »
- idhttp POST登录账号的时候显示“会话过期,请刷新本页面再登录”
- 有关于delphi文件查找的问题..请各位大大帮下忙.
- 'Value of field 'A1' is out of range ... 这个问题该怎么解决
- 急,100分送各位前辈:动态创建的serversocket怎么接受clientsocket的连接
- 问一个不太难的问题,可是我真的不懂,在线等!!!
- 这样的节点选择功能怎么实现呢?
- 求救!关于listbox的问题
- 强烈不满!!!!csdn的速度太慢了!!!大家都来提意见!!!
- 一个更新比较快的Delphi站点
- 我一直在用VB、VC,现在想学学Delphi,不知要多久?顺便推荐几本好书吧。
- 一秒关机,有须要的朋友进来看看,希望高手能把此代码译成Delphi,100分感谢!
- 如何实现win98下关机?
LPTSTR lpMessage, // address of message to display in dialog box
DWORD dwTimeout, // time to display dialog box
BOOL bForceAppsClosed, // force applications with unsaved changes flag
BOOL bRebootAfterShutdown // reboot flag
);一段使用InitiateSystemShutdown关机的程序如下
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, TeEngine, Series, ExtCtrls, TeeProcs, Chart;type
TForm1 = class(TForm)
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
Button1: TButton;
procedure BitBtn3Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementationuses TeCanvas;{$R *.dfm}procedure TForm1.BitBtn3Click(Sender: TObject);
var
rl:Cardinal;
hToken:Cardinal;
tkp:TOKEN_PRIVILEGES;
begin
{获得用户关机特权,仅对Windows NT/2000/XP}
OpenProcessToken(GetCurrentProcess,TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY,hToken);
if LookupPrivilegeValue(nil,'SeShutdownPrivilege',tkp.Privileges[0].Luid) then
begin
tkp.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED;
tkp.PrivilegeCount:=1;
AdjustTokenPrivileges(hToken,False,tkp,0,nil,rl);
end;
InitiateSystemShutdown(nil, //要关闭的计算机,如果是本机可以为空
PChar('系统即将关闭'), //显示的信息
20000, //延时时间
true, //是否强制结束
false) // 关机还是注销
end;procedure TForm1.Button1Click(Sender: TObject);
begin
//关机延时界面弹出后,可以通过点击此按钮来取消关机
AbortSystemShutdown(nil);
end;end.
D7+WINXP测试通过。
我的问题是用InitiateSystemShutdown如何完成poweroff。