Delphi 怎么注销WinXP???应该怎么写?

来源:百度知道 编辑:UC知道 时间:2024/04/30 13:40:55
Delphi 怎么注销WinXP???应该怎么写?
我只需要一点按钮就注销就行了

在Delphi中调用Windows API 函数十分方便,只需在单元的uses段加入Windows 单元名即可(对于由Delphi自动创建的单元,该项工作已经完成)。单元Windows.pas 已经由Delphi编写并直接提供开发者引用。笔者在开发Windows 应用时对于几个特别的API 函数总结了一些经验供大家参考。以下开发经验均在Windows 9x中适用。

一、关闭系统
对于某些特殊的应用程序,可能需要进行关闭系统的操作,可以调用函数ExitWindows 或者ExitWindowsEx 来实现。

在Delphi中函数ExitWindows 的语法如下:

function ExitWindows(dwReserved: Cardinal; Code: Word): LongBool;

如果调用该函数成功,则返回True,否则返回False ;成功调用该函数将执行“关闭所有程序并以其他身份登录(Windows 95)”或“注销(Windows 98)”操作。其中的参数dwReserved和参数Code都必须是0 。

例如,要实现注销操作,只需要在适当的位置写入如下语句:

ExitWindows(0, 0);

执行关闭计算机或重新启动计算机的操作,可以通过调用函数ExitWindowsEx 来实现。

在Delphi中函数ExitWindowsEx 的语法如下:

function ExitWindowsEx(uFlags, dwReserved: Cardinal): LongBool;

如果调用该函数成功,则返回True,否则返回False ;其中的参数uFlags的不同将决定执行不同的关闭操作:

EWX_FORCE 强制终止所有的进程。如果设置了此参数,Windows 将不会向正在运行的应用程序发送消息WM_QUERYENDSESSION和WM_ENDSESSION ,这将可能导致数据丢失。因此,除非特别紧急或特别的情况(如应用程序死锁或系