在C Builder程式中控制Windows关机

2008-02-23 05:31:04来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

 我们在应用程式编制完成后,需要设计应用程式的包装和分发功能。在编写安装程式时,经常会碰到这样的问题:程式安装完成后需要重新启动电脑。那么在代码中如何控制Windows的关机或重新启动呢?

  要实现这个功能,需要用到Windows API提供的一个ExitWindowsEx函数。我们能够通过查看C Builder提供的帮助文档得到这个函数的使用格式:

  BOOL ExitWindowsEx(

  UINT uFlags,

  // 配置关机参数

  DWORD dwReserved

  // 系统保留字

   );

  其中uFlags的主要配置值及意义见表1。

  dwReserved是系统保留字,随便填入个0即可。

  了解ExitWindowsEx函数的使用格式后,下面以实例说明在C Builder中控制Windows关机或重新启动的方法。

  设计步骤如下:

  1.运行C Builder系统后,先激活选单“File/New Application”,创建一个新工程。

  2.激活选单“File/Save As”把窗体单元以文档名exitu.cpp存盘,然后激活选单“File/Save Project As”把工程文档以文档名exitp.bpr存盘。(注意:工程文档名和窗体单元文档名不要同名。)

  3.在窗体上增加四个TButton组件Button1、Button2、Button3和Button4,分别配置他们的Caption属性为“其他身份登录”、“关机”、“重新启动”和“强制关机”。

  4.分别配置Button1、Button2、Button3和Button4组件的OnClick事件响应代码如下:

  void __fastcall TForm1::Button1Click(TObject ?Sender)

  {

   //其他身份登录

   DWORD temp;

   ExitWindowsEx(EWX_LOGOFF,temp);

  }

  //------------------------------

  void __fastcall TForm1::Button2Click(TObject ?Sender)

  {

   //关机

   DWORD temp;

   ExitWindowsEx(EWX_SHUTDOWN,temp);

  }

  //------------------------------

  void __fastcall TForm1::Button3Click(TObject ?Sender)

  {

   //重新启动

   DWORD temp;

   ExitWindowsEx(EWX_REBOOT,temp);

  }

  //------------------------------

  void __fastcall TForm1::Button4Click(TObject ?Sender)

  {

   //强制关机

   DWORD temp;

   ExitWindowsEx(EWX_FORCE,temp);

  }

表1 配置值
简要意义

EWX_FORCE
强制终止程式运行而退出系统

EWX_LOGOFF
退出而以其他身份登录

EWX_REBOOT
重新启动

EWX_SHUTDOWN
关机

  5.运行程式后,分别单击四个按钮测试他们的功能。假如能完成各种配置的功能,说明您已成功了,那么就能够将本文介绍的方法运用到自己研发的C Builder应用程式中去控制Windows的关闭了。

  本程式在中文Windows 98、C Builder 5.0环境下运行通过。




标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 用C Builder创建组合框

下一篇: 利用C Builder 实现网络连接检测程式

热门词条
热门标签