/[cvs]/nfo/projects/mess/src/client/windows/reload_explorer.py
ViewVC logotype

Annotation of /nfo/projects/mess/src/client/windows/reload_explorer.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (hide annotations)
Sat Jun 3 23:11:13 2006 UTC (18 years, 1 month ago) by joko
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +1 -1 lines
File MIME type: text/x-python
updated

1 joko 1.1 # ported from http://permalink.gmane.org/gmane.comp.python.windows/3801
2    
3     import win32gui
4     import win32api
5     import time
6     import os
7    
8     # send WM_QUIT to explorer - 18 == WM_QUIT
9     print "Shutting down Explorer"
10     try:
11     hwnd = win32gui.FindWindow('Progman', None)
12     win32api.PostMessage(hwnd, 18, 0, 0)
13     except:
14     None
15    
16     # wait a while for it to exit - 10 seconds, checking twice/sec
17     print "Waiting for Explorer to exit"
18     for retryAttempt in range(1, 10): # 5 seconds
19     time.sleep(0.5)
20     try:
21     if win32gui.FindWindow('Progman', None) == 0: break
22     except:
23     None
24 joko 1.2 time.sleep(2)
25 joko 1.1
26     # explorer is dead - restart it (SW_SHOW=5)
27     print "Restarting Explorer"
28     #InstExec('explorer.exe', '', '', False, False, 5, errCode)
29     #os.system('explorer.exe')
30     os.system('start explorer.exe')
31     #os.spawnl(os.P_DETACH, 'c:\\windows\\explorer.exe', 'c:\\windows\\explorer.exe')
32     #os.execl('c:\\windows\\explorer.exe', 'c:\\windows\\explorer.exe')
33    
34     # Now a few seconds to actually start - if we don't wait for this,
35     # then we may write the RunOnce keys before it has, causing
36     # explorer to process them as we are still installing (or just finished).
37     # Explorer processes the 'RunOnce' etc entries before creating its main window
38     print "Waiting for Explorer to start"
39     for retryAttempt in range(1, 20):
40     time.sleep(0.5)
41     if win32gui.FindWindow('Progman', None) != 0: break
42     # OK, explorer is back up

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed