希望得到大神指点,因为我真的怀疑下面的代码是用来关闭软件的
vb.net吧
全部回复
仅看楼主
level 7
暴牙归来 楼主
定义函数及模块:
Private Declare Function PostMessage Lib "User32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Function FindWindow Lib "User32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Const WM_CLOSE = &H10
==================
执行代码:
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
winHwnd = FindWindow(vbNullString, "C:\Adobe.Photoshop\Photoshop.exe")
Debug.Print(winHwnd)
If winHwnd <> 0 Then
RetVal = PostMessage(winHwnd, WM_CLOSE, 0&, 0&)
If RetVal <> 0 Then
msgbox("关闭软件成功")
End If
End If
End Sub
2016年04月05日 04点04分 1
level 7
暴牙归来 楼主
2016年04月05日 04点04分 2
level 13
这个是用来关闭窗口的
---贴吧极速版 For UWP
2016年04月05日 04点04分 3
level 7
暴牙归来 楼主
关闭vb窗口还是关闭指定程序的窗口
2016年04月05日 04点04分 4
level 10
FindWindow("窗体的类名", "窗体的标签名")
findwindow无法通过进程路径来找到进程的窗体
而且即使你发送关闭窗体的消息给一个进程的窗体,这个程序也有可能并不会关闭
最简单直接无脑残暴的方法
shell("tskill.exe Photoshop.exe")
安全一点的方法是用 Process 遍历,然后检查Process的主模块路径
没学会走路之前别急着跑步 [喷]
2016年04月05日 07点04分 5
shell("tskill.exe Photoshop") 就行了,别加 .exe
2016年04月05日 07点04分
@二笔青年🐷 你也可以用 Shell ("taskkill.exe -f -im Photoshop.exe")
2016年04月05日 07点04分
level 11
有啥好怀疑的,直接问度娘wm_close这常数代表啥意思就行了
2016年04月06日 15点04分 6
1