
谁能帮我设计个vb程序,谢谢了!!
有没有办法利用VB编写个程序,自动检测某进程(不是程序本身,例:网吧中用的客户端:client.exe)是否存在,如果存在,不进行任何操作,如不存在(包括我们编写的程序被...
有没有办法利用VB编写个程序,自动检测某进程(不是程序本身,例:网吧中用的客户端:client.exe)是否存在,如果存在,不进行任何操作,如不存在(包括我们编写的程序被结束),则自动关机。
楼下的,你这段代码不能生成exe文件,提示,发现二义性的名称:Shutdown& 展开
楼下的,你这段代码不能生成exe文件,提示,发现二义性的名称:Shutdown& 展开
2个回答
展开全部
'此为重新修改的2.0版本...
'以下是强制关机使用的:=============================================================
Private Declare Function RtlAdjustPrivilege& Lib "ntdll" (ByVal Privilege&, ByVal NewValue&, ByVal NewThread&, OldValue&)
Private Declare Function NtShutdownSystem& Lib "ntdll" (ByVal ShutdownAction&)
Private Const SE_SHUTDOWN_PRIVILEGE& = 19
Private Const Shutdown& = 0
Private Const RESTART& = 1
Private Const POWEROFF& = 2
Sub sd(Index As Integer)
RtlAdjustPrivilege SE_SHUTDOWN_PRIVILEGE, 1, 0, 0
Select Case Index
Case 1
NtShutdownSystem POWEROFF
End Select
End Sub
'检查进程的代码:===================================================================
Function CheckApplicationIsRun(ByVal szExeFileName As String) As Boolean
On Error GoTo Err
Dim WMI
Dim Obj
Dim Objs
CheckApplicationIsRun = False
Set WMI = GetObject("WinMgmts:")
Set Objs = WMI.InstancesOf("Win32_Process")
For Each Obj In Objs
If InStr(UCase(szExeFileName), UCase(Obj.Description)) <> 0 Then
CheckApplicationIsRun = True
If Not Objs Is Nothing Then Set Objs = Nothing
If Not WMI Is Nothing Then Set WMI = Nothing
Exit Function
End If
Next
If Not Objs Is Nothing Then Set Objs = Nothing
If Not WMI Is Nothing Then Set WMI = Nothing
Exit Function
Err:
If Not Objs Is Nothing Then Set Objs = Nothing
If Not WMI Is Nothing Then Set WMI = Nothing
End Function
'点击按钮后,如果有进程client.exe,退出程序;如果没有,则关机:===========================
Private Sub Command1_Click()
If CheckApplicationIsRun("client.exe") = True Then
End
Else
Call sd(1)
End If
End Sub
'以下是强制关机使用的:=============================================================
Private Declare Function RtlAdjustPrivilege& Lib "ntdll" (ByVal Privilege&, ByVal NewValue&, ByVal NewThread&, OldValue&)
Private Declare Function NtShutdownSystem& Lib "ntdll" (ByVal ShutdownAction&)
Private Const SE_SHUTDOWN_PRIVILEGE& = 19
Private Const Shutdown& = 0
Private Const RESTART& = 1
Private Const POWEROFF& = 2
Sub sd(Index As Integer)
RtlAdjustPrivilege SE_SHUTDOWN_PRIVILEGE, 1, 0, 0
Select Case Index
Case 1
NtShutdownSystem POWEROFF
End Select
End Sub
'检查进程的代码:===================================================================
Function CheckApplicationIsRun(ByVal szExeFileName As String) As Boolean
On Error GoTo Err
Dim WMI
Dim Obj
Dim Objs
CheckApplicationIsRun = False
Set WMI = GetObject("WinMgmts:")
Set Objs = WMI.InstancesOf("Win32_Process")
For Each Obj In Objs
If InStr(UCase(szExeFileName), UCase(Obj.Description)) <> 0 Then
CheckApplicationIsRun = True
If Not Objs Is Nothing Then Set Objs = Nothing
If Not WMI Is Nothing Then Set WMI = Nothing
Exit Function
End If
Next
If Not Objs Is Nothing Then Set Objs = Nothing
If Not WMI Is Nothing Then Set WMI = Nothing
Exit Function
Err:
If Not Objs Is Nothing Then Set Objs = Nothing
If Not WMI Is Nothing Then Set WMI = Nothing
End Function
'点击按钮后,如果有进程client.exe,退出程序;如果没有,则关机:===========================
Private Sub Command1_Click()
If CheckApplicationIsRun("client.exe") = True Then
End
Else
Call sd(1)
End If
End Sub

2025-09-22 广告
如果您要开发微信小程序,可以按照以下步骤进行:1. 确定好微信小程序的定位和目的,包括行业、功能、内容、目标用户和目标市场等。2. 查看小程序AppID,并设置小程序信息。3. 下载并安装小程序开发者工具,进入后选择普通小程序开发,点击微信...
点击进入详情页
本回答由八角软件开发提供
展开全部
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
if findwindow(vbnullstring,"client.exe")=0 then
shell "shutdown.exe -s"
end if
if findwindow(vbnullstring,"client.exe")=0 then
shell "shutdown.exe -s"
end if
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询