正在阅读:在 NT内核的操作系统上实现系统关闭在 NT内核的操作系统上实现系统关闭

2004-10-26 11:57 出处:CSDN 作者:fsxlh 责任编辑:linjixiong

  很多时候,我们可能需要执行关闭计算机或重新启动计算机的操作,但在 WinNT 内核的操作系统中,我们不能只调用简单的 API 函数来完成这样的操作。这并不是一个复杂的问题,却有时候会让人“为难”,如果是这样,现在解决这个问题的办法来了。

  ***************************************************************************
  具体使用示例:
  注销当前用户 => ExitWin32Sys(EWX_FORCE or EWX_LOGOFF);
  重新启动计算机 => ExitWin32Sys(EWX_FORCE or EWX_REBOOT);
  关闭计算机 => ExitWin32Sys(EWX_FORCE or EWX_POWEROFF);
  ***************************************************************************
  具体代码:


  uses
  Windows;

  function GetSysTypes: Boolean; // & 获取操作系统类型 &
  function SetPrivilege(sPrivilegeName: AnsiString; bEnable: Boolean): Boolean; // & 设置权限 &
  procedure ExitWin32Sys(iFlags: Integer); // & 执行注销、退出或重启系统的操作 &

  implementation

  function GetSysTypes: Boolean;
  var
  Ver: TOSVersionInfo;
  begin
  Result := False;
  Ver.dwOSVersionInfoSize := SizeOf(TOSVersionInfo);
  if GetVersionEx(Ver) then
  if Ver.dwPlatformId = VER_PLATFORM_WIN32_WINDOWS then
  Result := True
  else
  Result := False;
  end;


察看评论详细内容 我要发表评论
作者笔名 简短内容 发表时间
:
键盘也能翻页,试试“← →”键

关注我们

最新资讯离线随时看 聊天吐槽赢奖品