易語言枚舉進程通過窗口句柄獲取已經(jīng)登錄的QQ號碼
更新時間:2018年11月28日 14:53:33 作者:易語言源碼教程
今天小編就為大家分享一篇關(guān)于易語言枚舉進程通過窗口句柄獲取已經(jīng)登錄的QQ號碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
DLL命令表
.版本 2 .DLL命令 GetDesktopWindow, 整數(shù)型, "user32.dll", "GetDesktopWindow" .DLL命令 CreateToolhelp32Snapshot, 整數(shù)型, "kernel32", "CreateToolhelp32Snapshot" .參數(shù) dwFlags, 整數(shù)型, , 0 .參數(shù) th32ProcessIE, 整數(shù)型, , 0 .DLL命令 Process32First, 整數(shù)型, "kernel32", "Process32First" .參數(shù) hSnapshot, 整數(shù)型, , 0 .參數(shù) lppe, 進程信息列表, , 0 .DLL命令 CloseHandle, 邏輯型, "Kernel32", "CloseHandle", , 關(guān)閉打開的對象句柄 .參數(shù) hObject, 整數(shù)型, , 要關(guān)閉的對象句柄 .DLL命令 GetWindowTextA, 整數(shù)型, "user32.dll", "GetWindowTextA", , 取得一個窗體的標(biāo)題(caption)文字,或者一個控件的內(nèi)容(在vb里使用:使用vb窗體或控件的caption或text屬性) 復(fù)制到lpString的字串長度;不包括空中止字符。會設(shè)置GetLastError .參數(shù) hWnd, 整數(shù)型, , 欲獲取文字的那個窗口的句柄 .參數(shù) lpString, 文本型, 傳址, 預(yù)定義的一個緩沖區(qū),至少有cch 1個字符大小;隨同窗口文字載入 .參數(shù) nMaxCount, 整數(shù)型, , lp緩沖區(qū)的長度; .DLL命令 GetWindowTextLength, 整數(shù)型, "user32", "GetWindowTextLengthA", 公開 .參數(shù) hwnd, 整數(shù)型 .DLL命令 Process32Next, 整數(shù)型, "kernel32", "Process32Next", , 獲得下一個進程的句柄 .參數(shù) hSnapshot, 整數(shù)型, , 0 .參數(shù) lppe, 進程信息列表, , 0 .DLL命令 GetWindow, 整數(shù)型, , "GetWindow" .參數(shù) 源窗口, 整數(shù)型 .參數(shù) 關(guān)系, 整數(shù)型
自定義數(shù)據(jù)類型表
.版本 2 .數(shù)據(jù)類型 進程信息列表, 公開 .成員 dwSize, 整數(shù)型, , , 1 .成員 cntUsage, 整數(shù)型, , , 2 .成員 進程ID, 整數(shù)型, , , 3 .成員 th32DefaultHeapID, 整數(shù)型, , , 4 .成員 th32ModuleID, 整數(shù)型, , , 5 .成員 cntThreads, 整數(shù)型, , , 6 .成員 th32ParentProcessID, 整數(shù)型, , , 7 .成員 pcPriClassBase, 整數(shù)型, , , 8 .成員 dwFlags, 整數(shù)型, , , 9 .成員 進程名稱, 字節(jié)型, , "256", 10
窗口句柄方式取已登陸QQ號碼的代碼
.版本 2 .程序集 窗口程序集_啟動窗口 .子程序 _啟動子程序, 整數(shù)型 .局部變量 返回的QQ號碼, 文本型 .局部變量 分割的文本, 文本型, , "0" 返回的QQ號碼 = 系統(tǒng)_取已登陸QQ號碼 () 分割的文本 = 分割文本 (返回的QQ號碼, #換行符, ) 信息框 (“有” + 到文本 (取數(shù)組成員數(shù) (分割的文本)) + “個QQ” + #換行符 + 返回的QQ號碼, 0, ) 返回 (0) .子程序 窗口_取標(biāo)題, 文本型, 公開 .參數(shù) 窗口句柄, 整數(shù)型 .局部變量 局_緩沖區(qū), 文本型 .局部變量 局_緩沖大小 局_緩沖大小 = GetWindowTextLength (窗口句柄) + 1 局_緩沖區(qū) = 取空白文本 (局_緩沖大小) GetWindowTextA (窗口句柄, 局_緩沖區(qū), 局_緩沖大小) 返回 (局_緩沖區(qū)) .子程序 窗口_枚舉窗口句柄, 整數(shù)型, 公開, 通過窗口任務(wù)關(guān)系來枚舉所有窗口,返回窗口句柄數(shù)目,失敗返回0 .參數(shù) 句柄數(shù)組, 整數(shù)型, 可空 數(shù)組, 返回的所有窗口句柄數(shù)組 .局部變量 窗口句柄, 整數(shù)型 清除數(shù)組 (句柄數(shù)組) 窗口句柄 = GetWindow (GetDesktopWindow (), 5) .判斷循環(huán)首 (窗口句柄 ≠ 0) 加入成員 (句柄數(shù)組, 窗口句柄) 窗口句柄 = GetWindow (窗口句柄, 2) .判斷循環(huán)尾 () 返回 (取數(shù)組成員數(shù) (句柄數(shù)組)) .子程序 進程_取ID數(shù)組, 整數(shù)型, 公開, 取指定進程名稱的所有進程的進程ID(返回進程ID數(shù)目,沒有返回0) .參數(shù) 進程名, 文本型, , 程序進程名 .參數(shù) 進程ID數(shù)組, 整數(shù)型, 參考 數(shù)組, 返回的進程ID 數(shù)組 .參數(shù) 區(qū)分大小寫, 邏輯型, 可空, 默認不區(qū)分進程名大小寫 .局部變量 信息, 進程信息列表 .局部變量 進程快照, 整數(shù)型 .局部變量 進程句柄, 整數(shù)型 清除數(shù)組 (進程ID數(shù)組) 進程快照 = CreateToolhelp32Snapshot (15, 0) .如果真 (進程快照 = 0) 返回 (0) .如果真結(jié)束 信息.dwSize = 1024 進程句柄 = Process32First (進程快照, 信息) .判斷開始 (區(qū)分大小寫) .判斷循環(huán)首 (進程句柄 ≠ 0) .如果真 (進程名 = 到文本 (信息.進程名稱)) 加入成員 (進程ID數(shù)組, 信息.進程ID) .如果真結(jié)束 進程句柄 = Process32Next (進程快照, 信息) .判斷循環(huán)尾 () .默認 .判斷循環(huán)首 (進程句柄 ≠ 0) .如果真 (到小寫 (進程名) = 到小寫 (到文本 (信息.進程名稱))) 加入成員 (進程ID數(shù)組, 信息.進程ID) .如果真結(jié)束 進程句柄 = Process32Next (進程快照, 信息) .判斷循環(huán)尾 () .判斷結(jié)束 CloseHandle (進程快照) 返回 (取數(shù)組成員數(shù) (進程ID數(shù)組)) .子程序 系統(tǒng)_取已登陸QQ號碼, 文本型, 公開, 成功返回QQ號碼,如果是多個QQ號碼以#換行符分開,其他的都返回空 .局部變量 局_窗口標(biāo)題, 文本型 .局部變量 局_變量文本, 文本型 .局部變量 局_分割的文本, 文本型, , "0" .局部變量 局_進程ID數(shù)目, 整數(shù)型 .局部變量 計次, 整數(shù)型 .局部變量 i, 整數(shù)型 .局部變量 局_進程ID數(shù)組, 整數(shù)型, , "0" .局部變量 局_窗口數(shù)目, 整數(shù)型 局_進程ID數(shù)目 = 進程_取ID數(shù)組 (“QQ.exe”, 局_進程ID數(shù)組) 計次 = 1 局_窗口數(shù)目 = 窗口_枚舉窗口句柄 (局_進程ID數(shù)組) .計次循環(huán)首 (局_窗口數(shù)目, i) 局_窗口標(biāo)題 = 窗口_取標(biāo)題 (局_進程ID數(shù)組 [i]) .如果真 (尋找文本 (局_窗口標(biāo)題, “qqexchangewnd_shortcut_prefix”, , 假) ≠ -1) 局_分割的文本 = 分割文本 (局_窗口標(biāo)題, “_”, ) .判斷開始 (計次 = 局_進程ID數(shù)目) 局_變量文本 = 局_變量文本 + 局_分割的文本 [取數(shù)組成員數(shù) (局_分割的文本)] 計次 = 計次 + 1 .默認 局_變量文本 = 局_變量文本 + 局_分割的文本 [取數(shù)組成員數(shù) (局_分割的文本)] + #換行符 計次 = 計次 + 1 .判斷結(jié)束 .如果真結(jié)束 .如果真 (計次 > 局_進程ID數(shù)目) 跳出循環(huán) () .如果真結(jié)束 .計次循環(huán)尾 () 返回 (局_變量文本)
運行結(jié)果:
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
易語言設(shè)置在月歷框架內(nèi)是否顯示今天的日期
今天小編就為大家分享一篇關(guān)于易語言設(shè)置在月歷框架內(nèi)是否顯示今天的日期,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-11-11易語言統(tǒng)計重復(fù)數(shù)教學(xué)
在本篇文章里小編給大家?guī)淼囊黄P(guān)于易語言統(tǒng)計重復(fù)數(shù)教學(xué)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。2019-01-01