台灣最大程式設計社群網站
線上人數
1906
 
會員總數:246038
討論主題:189625
歡迎您免費加入會員
討論區列表 >> VB6 >> Combox 視窗名稱
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
Combox 視窗名稱
價值 : 5 QP  點閱數:840 回應數:0
樓主

Silence
門外漢
0 1
10 0
發送站內信





Dim WMI As Object, Obj As Object, S As String
Combo1.Clear
S = "Select * From Win32_Process"
Set WMI = GetObject("WinMgmts:")
For Each Obj In WMI.ExecQuery(S)
Combo1.AddItem Obj.Description
Next
Set Obj = Nothing
Set WMI = Nothing

此程式碼可以列出像工作管理的程序處理
我主要想做的功能是(以記事本舉例)
假如果開三個新的記事本分別為1,2,3

指定Notepad.exe 後 在Combo1列出 1 - 記事本
2 - 記事本
3 - 記事本

不知道是不用App.ExeName 轉換..
請問有人可以只點一下嗎?

另外參考書中的程式碼

'以下模組
Public Declare Function EnumWindows Lib "User32" (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long
Public Declare Function GetWindowText Lib "User32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Function CallBackHWnd(ByVal hwnd As Long, ByVal lParam As Long) As Boolean

Dim tgTitle As String
tgTitle = String(64, 0)
Call GetWindowText(hwnd, tgTitle, 64)
tgTitle = Left(tgTitle, InStr(tgTitle, Chr(0)) - 1)
If Len(tgTitle) > 0 Then Form1.Combo1.AddItem tgTitle
CallBackHWnd = True
End Function

Private Sub Form_Load()
EnumWindows AddressOf CallBackHWnd, lParam '刷新視窗
End Sub

雖然可以直接列出視窗名稱
但是會跑出一些應該是系統的程式
變成要選擇名稱需要找很久..
請大大指點

搜尋相關Tags的文章: [ Combox 視窗 ] ,
本篇文章發表於2015-11-14 20:49
目前尚無任何回覆
   

回覆
如要回應,請先登入.