python:3.4
goagent:3.1.22-33
写了一个想在ipv4/6之间切换的小脚本
path=r'D:\Documents\Downloads\Downloads\goagent-goagent-v3.1.22-33-g1281719\goagent-goagent-1281719\local\proxy.ini'
change(path,mode)
os.system('taskkill /im goagent.exe /f')
os.system('taskkill /im python27.exe /f')
goagentPath=r'D:\Documents\Downloads\Downloads\goagent-goagent-v3.1.22-33-g1281719\goagent-goagent-1281719\local\goagent.exe'
os.system(goagentPath)
exit()
然而运行之后活动窗口变成了goagent窗口,原来运行py脚本的窗口还是开着的。求问如何关掉它
另:GoAgent有一个点右下角任务栏图标就最小化,只剩一个图标任务栏,没有中间的那个程序窗口。求问如何用python做到自动化?
ps:我就是懒。。。
用下面的代码给你说明吧:
if os.name == 'nt':
import ctypes
ctypes.windll.kernel32.SetConsoleTitleW(u'GoAgent v%s' % __version__)
if not common.LISTEN_VISIBLE:
ctypes.windll.user32.ShowWindow(ctypes.windll.kernel32.GetConsoleWindow(), 0)
else:
ctypes.windll.user32.ShowWindow(ctypes.windll.kernel32.GetConsoleWindow(), 1)
原来运行py脚本的窗口还是开着的,如何关掉它?
问题在于os.system()
是要等待运行的程序(goagent)退出后才返回,你可以这样:
goagentPath=r'D:\Documents\Downloads\Downloads\goagent-goagent-v3.1.22-33-g1281719\goagent-goagent-1281719\local\goagent.exe'
cmdline = 'start "%s"' % goagentPath
os.system(cmdline)
或者
os.startfile(goagentPath)
GoAgent有一个点右下角任务栏图标就最小化,只剩一个图标任务栏,没有中间的那个程序窗口。求问如何用python做到自动化?
解决的思路是根据 GoAgent 的窗口标题找到它的窗口句柄,然后将它最小化或隐藏。
因为我这边没有这个软件,只能给你大致的参考代码:
import win32gui
import win32con
wndtitle = 'GoAgent'
wndclass = None
wnd = win32gui.FindWindow(wndclass, wndtitle)
win32gui.ShowWindow(wnd, win32con.SW_MINIMIZE) # SW_HIDE for hide
什么,你说你连 pywin32
这个 Windows 下最常用的扩展库都没有安装? pip install pywin32