自己写的,小记一下,以后好用
不管你运行的是什么样的形式,,,只要在win32下,都可以隐藏掉控制台,,
import win32gui, win32con, win32api
def _MyCallback( hwnd, extra ):
windows = extra;
temp=[];
temp.append(hwnd);
temp.append(win32gui.GetClassName(hwnd));
temp.append(win32gui.GetWindowText(hwnd));
temp.append(hex(hwnd));
windows[hwnd] = temp;
#is_clost =True
def TestEnumWindows(closttitle,is_close):
windows = {};
win32gui.EnumWindows(_MyCallback, windows);
print "Enumerated a total of windows with %d classes" ,(len(windows))
print '------------------------------';
#print classes
print '-------------------------------';
if is_close :
for item in windows :
if windows[item][1]=="ConsoleWindowClass":
if windows[item][2].endswith(closttitle):
print 111
# win32gui.CloseWindow(windows[item][0]);
win32gui.SendMessage(windows[item][0], win32con.WM_CLOSE, None, None);
else:
for item in windows :
if windows[item][1]=="ConsoleWindowClass":
if windows[item][2].endswith(closttitle):
#print windows[item][0]
win32gui.ShowWindow(windows[item][0],False);
#print "Enumerating all windows..."
#h=win32gui.FindWindow(None,'\xba\xec\xce\xe5')
#print hex(h)
TestEnumWindows('Regdean.exe',True)
#print "All tests done!"
TestEnumWindows('Regdean.exe',True)
true 为关闭窗体
false 为隐藏窗体