关闭SHELL启动的程序出错?
关闭SHELL启动的程序出错?
楼主cbxmir(在别处)2003-06-30 19:17:58 在 VB / API 提问 为什么关闭不了?
pHnd都可以找到,为什么不能关闭?
=======================================
Const SYNCHRONIZE = &H100000
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Declare Function TerminateProcess Lib "kernel32" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long
Private Sub Command2_Click()
Dim pId As Long, pHnd As Long " 分别声明 Process Id 及 Process Handle 变数
pId = Shell("explorer.exe", vbNormalFocus) " Shell 传回 Process Id
MsgBox pId
pHnd = OpenProcess(SYNCHRONIZE, 0, pId) " 取得 Process Handle
MsgBox pHnd, vbYesNo
Call TerminateProcess(pHnd, 0) " TerminateProcess 所传入的是 Process Handle
Call CloseHandle(pHnd)
End Sub
Private Sub Command3_Click()
Call CloseHandle(pHnd)
End Sub 问题点数:20、回复次数:5Top
1 楼rainstormmaster(暴风雨 v2.0)回复于 2003-06-30 23:11:21 得分 0
呵呵,关闭的程序特殊了点Top
2 楼cbxmir(在别处)回复于 2003-07-01 00:55:38 得分 0
就算是计算器也不行~
为什么,HWND可以找到,但是就是POSTMESSAGE是不行。为什么?
有调试好的源代码吗?Top
3 楼James0001(虾米—什么时候成大虾?)回复于 2003-07-01 01:05:38 得分 5
pHnd = OpenProcess(SYNCHRONIZE, 0, pId) " 取得 Process Handle
~~~~~~~~~~~
你只有同步的权限,没有关闭此进程的权限。Top
4 楼cbxmir(在别处)回复于 2003-07-01 01:28:32 得分 0
API浏览器查不到,
能关闭进程的权限怎么写?Top
5 楼James0001(虾米—什么时候成大虾?)回复于 2003-07-01 07:30:36 得分 15
Const PROCESS_TERMINATE = &H1&
pHnd = OpenProcess(PROCESS_TERMINATE, 0, pId) " 取得 Process HandleTop
-
相关文章
2秒记住本站域名
玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的readygo.com.cn
