如何獲取正在Foxpro 9中運行進程的任務管理器的列表,以及如何在FoxPro中的列表中終止其中一個進程?Foxpro訪問正在運行進程的窗口以及如何結束正在運行的進程
0
A
回答
0
使用WMI使這很容易。有一個使用WIN32_Process在http://www.berezniker.com/content/pages/visual-foxpro/check-if-exe-running-and-optionally-terminate-it終止進程的示例實現,它也可以很容易地適用於列出進程。
0
這是一個殺死特定程序的所有可見實例的函數。你需要知道它的ClassName。我已經能夠通過搜索找到常見的應用(如Office應用程序)的類名:
FUNCTION KillApp
*==============================================================================
* Program: KillApp.PRG
* Purpose: Close any invisible instances of a specified program
* Author: Tamar E. Granor
* Last revision: 04/16/02
* Parameters: tcClassName - the classname of the app to close
* Returns: Number of instances closed; -1, if parameter problems
* Environment in:
* Environment out: Several API functions declared
*==============================================================================
#DEFINE GW_CHILD 5
#DEFINE GW_HWNDNEXT 2
#DEFINE WM_CLOSE 0x10
LPARAMETERS tcClassName
ASSERT VARTYPE(tcClassName) = "C" AND NOT EMPTY(tcClassName) ;
MESSAGE "KillApp: Must pass class name of application to kill"
IF VARTYPE(tcClassName) <> "C" OR EMPTY(tcClassName)
ERROR 11
RETURN -1
ENDIF
DECLARE LONG GetDesktopWindow IN WIN32API
DECLARE LONG GetWindow IN WIN32API LONG hWnd, LONG wCmd
DECLARE LONG IsWindowVisible IN WIN32API LONG hWnd
DECLARE LONG GetClassName IN WIN32API LONG hWnd, STRING lpClassName, LONG nMaxCount
DECLARE LONG PostMessage IN WIN32API LONG hwnd, LONG wMsg, LONG wParam, LONG lParam
LOCAL lnDesktopHWnd, lnHWnd, lnOldHWnd, lcClass, lnLen, nClosedCount
lnDesktopHWnd = GetDesktopWindow()
lnHWnd = GetWindow(lnDesktopHWnd, GW_CHILD)
lnClosedCount = 0
DO WHILE lnHWnd <> 0
lcClass = SPACE(256)
lnLen = GetClassName(lnHWnd, @lcClass, 256)
lnOldHWnd = lnHWnd
lnHWnd = GetWindow(lnOldHWnd, GW_HWNDNEXT)
IF UPPER(LEFT(lcClass, lnLen)) = UPPER(tcClassName)
lnVisible = IsWindowVisible(lnOldHWnd)
IF lnVisible = 0
PostMessage(lnOldHWnd, WM_CLOSE, 0, 0)
lnClosedCount = lnClosedCount + 1
ENDIF
ENDIF
ENDDO
RETURN lnClosedCount
剛剛意識到的過程可能不一樣的應用程序。它看起來像查找過程的API函數是EnumProcesses。檢出http://www.news2news.com/vfp/?group=-1&function=246。
添馬艦
相關問題
- 1. 正在運行的進程
- 2. 如何確保正在運行的進程正在運行?
- 3. 僅僅運行一次就可以正常運行正在運行的進程
- 4. 如何讓Python進程以正確的進程名稱運行?
- 5. .NET設置變量以運行進程(如果進程正在運行)
- 6. 正在運行的進程的Python REPL
- 7. WSO2修改正在運行的進程
- 8. 正在運行的進程列表
- 9. 獲取正在運行的進程'dimensions
- 10. 取消正在運行的進程
- 11. c#通知正在運行的進程
- 12. PM2正在運行額外的進程
- 13. 檢查正在運行的進程 - java
- 14. 正在運行的任務進程ID
- 15. 列出正在運行的進程
- 16. Nicing正在運行的Python進程?
- 17. 硒離開正在運行的進程?
- 18. 重定向正在運行的進程
- 19. 斷開與正在運行的進程
- 20. 如果一個進程正在運行
- 21. 試圖訪問系統正在運行的進程
- 22. 進程運行不正確
- 23. 訪問正在運行的線程
- 24. 如何在Android進程中獲取正在運行的線程?
- 25. 如何在程序進程結束時運行代碼
- 26. Cron守護進程正在運行,系統日誌守護進程正在運行,但cron不會運行
- 27. freebsd:正在運行的進程的當前目錄進程號
- 28. 獲取正在運行的進程給定的進程句柄
- 29. 綁定而進程正在運行(WPF)
- 30. 正在運行pytest進程中
非常好的添馬艦。我能夠調整你的代碼,簡單地給我一個正在運行的進程的遊標(和一個集合)。我只是想看看機器上運行的是什麼,不一定會殺死任何東西。我改編的代碼在這裏http://codepaste.net/1enkjz – MattSlay 2016-10-17 16:47:54