龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VB开发 >

在VB应用程序中控制Win95的启动

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
----在用VisualBasic编写Win95应用程序时,有时可能希望由程序来控制计算机的启动功能,比如当应用程序对系统注册表作了修改后需要重新启动Win95。 ----那么,如何在应用程序中控制Win9
----在用VisualBasic编写Win95应用程序时,有时可能希望由程序来控制计算机的启动功能,比如当应用程序对系统注册表作了修改后需要重新启动Win95。
  
  ----那么,如何在应用程序中控制Win95的启动呢?由于VisualBasic自身没有提供相关的命令和函数,我们只好求助于WindowsAPI函数ExitWindowsEx,调用该函数,我们可以完成重新启动、关机、强制关闭所有应用程序或重新登录等操作,下面是该函数的函数声明:
  
  DeclareFunctionExitWindowsExLib
  "user32"(ByValuFlagsAsLong,
  ByValdwReservedAsLong)AsLong
  
  ----ExitWindowsEx函数有两个参数,其中第二个为保留参数,第一个参数uFlags用来决定调用函数时的具体动作,可能的取值和含义见下表:
  Uflags的值含义
  0重新登录
  1关闭计算机
  2重新启动
  4强制关闭所有应用程序
  
  ----下面以一个小程序为例,介绍如何在程序中控制Win95的启动:
  ----新建一个工程,添加一个普通窗体Form1,在窗体上放置一个Frame控件Frame1、一个命令按钮控件Command1和一个包含4个元素的选项按钮控件数组Option1。再给工程添加一个代码模块Module1,在其
  
  ----中写上如下的声明(注意ExitWindowsEx的函数声明必须写在一行上):
  
  PublicConstLOGOFF=0
  PublicConstSHUTDOWN=1
  PublicConstREBOOT=2
  PublicConstCLOSEPROGRAMES=4
  DeclareFunctionExitWindowsExLib"user32"
  (ByValuFlagsAsLong,ByValdwReservedAsLong)AsLong
  
  在窗体Form1的代码模块中编写
  Command1的Click事件过程如下:
  
  PrivateSubCommand1_Click()
  DimHowAsLong
  IfOption1(0).Value=TrueThen
  How=LOGOFF'选择了重新登录
  ElseIfOption1(1).Value=TrueThen
  How=REBOOT'选择了重新启动
  ElseIfOption1(2).Value=TrueThen
  How=SHUTDOWN'选择了关闭计算机
  Else
  How=CLOSEPROGRAMES'选择了关闭所有程序
  EndIf
  CallExitWindowsEx(How,0)'执行操作
  EndSub
  
  ----按下F5,运行本程序,选择某个功能,然后按下确认按钮,嘿!不错吧。本程序用VisualBasic5.0编写,在Pwin95和Pwin97环境下运行正常。->

精彩图集

赞助商链接