在C++中控制Windows关机,第1张

在C++中控制Windows关机,第2张

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

要实现这个功能,需要使用Windows API提供的exitwindowsexfunction。我们可以通过查看C++ Builder提供的帮助文件来获取该函数的使用格式:

布尔ExitWindowsEx(

UINT uFlags,

//设置关机参数

保留

//系统保留字

);

uFlags的主要设定值和意义如表1所示。

DwReserved是系统的保留字,填个0就行了。

在了解了ExitWindowsEx函数的使用格式后,下面举例说明如何在C++ Builder中控制Windows关机或重启。

设计步骤如下:

1.运行C++ Builder系统后,首先激活菜单“文件/新应用”创建一个新项目。

2.激活菜单“文件/另存为”以文件名exitu.cpp保存表单单元,然后激活菜单“文件/项目另存为”以文件名exitp.bpr保存项目文件(注意:项目文件名不应与表单单元的文件名同名。)

3.在窗体上添加四个TButton组件Button1、Button2、Button3和Button4,并分别将它们的标题属性设置为以其他身份登录、关机、重启和强制关机。

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

void _ _ fast call t form 1::button 1 click(to object Sender)

{

//以另一个身份登录

DWORD温度;

ExitWindowsEx(EWX_LOGOFF,temp);

}

// -

void _ _ fast call t form 1::button 2 click(to object Sender)

{

//关闭

DWORD温度;

ExitWindowsEx(EWX_SHUTDOWN,temp);

}

// -

void _ _ fast call t form 1::button 3 click(to object Sender)

{

//重新启动

DWORD温度;

ExitWindowsEx(EWX_REBOOT,temp);

}

// -

void _ _ fast call t form 1::button 4 click(to object Sender)

{

//强制关机

DWORD温度;

ExitWindowsEx(EWX_FORCE,temp);

}

设置参数描述:

设置值的简要含义。

EWX_FORCE强制终止程序并退出系统。

EWX_LOGOFF注销并以另一个身份登录。

EWX_REBOOT重新启动

EWX_SHUTDOWN关机

5.运行程序后,单击四个按钮来测试它们的功能。如果你能完成各种设置的功能,就说明你成功了,那么你就可以把本文介绍的方法应用到自己开发的C++ Builder应用程序中,来控制Windows的关闭。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 在C++中控制Windows关机

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情