1) BOOL IsHungAppWindow (
HWND hWnd // main winows handle
);
// Defined in User32.dll
2) BOOL IsHungThread (
DWORD dwThreadID // the thread ID to main thread
)
The 2 APIs to judge the windows is "running" or "Not responding". like as in Task Management.
/// ========================================
3) SHRestartSystemMB
4) SHShutDownDialog
Declare Function SHShutDownDialog Lib "shell32" Alias "#60" (Byval yourGuess as Long) as long
5) SHRunDialog
Declare Function SHRunDialog Lib "shell32" Alias "#61" (Byval hOwner as Long, byval UnKnown1 as long, byval UnKonwn2 as Long, byva lszTitle as String, byval szPrompt as Sting, byval nFlag as long) as long
6) SHChangeIconDialog
Declare Function SHChangeIconDialog Lib "shell32" Alias "#62" (Byval hOwner as Long, byva lszFileName as String, byval reverse as long, lpIconIndex as Long) as long
7) SHGetExtension
Declare Function SHGetExtension Lib "shell32" Alias "#31" (byva lszPath as String) as Long
8) SHAddBackslash
Declare Function SHAddBackslash Lib "shell32" Alias "#32" (byva lszPath as String) as Long
9) SHGetFileName
Declare Function SHGetFileName Lib "shell32" Alias "#34" (byva lszPath as String) as Long
10) SHPathIsRelative
Declare Function SHPathIsRelative Lib "shell32" Alias "#40" (byva lszPath as String) as Long
11) SHPathIsExe
Declare Function SHPathIsExe Lib "shell32" Alias "#43" (byva lszPath as String) as Long
12) SHFileExists
Declare Function SHFileExists Lib "shell32" Alias "#45" (byva lszPath as String) as Long
13) SHGetPathArgs
Declare Function SHGetPathArgs Lib "shell32" Alias "#52" (byva lszPath as String) as Long
14) shgetaskpathname
Declare Function shgetaskpathname Lib "shell32" Alias "#92" (byva lszPath as String) as Long