在启动时,通过vbs脚本运行bat文件的问题
我需要在启动时运行一个程序(python脚本制作成exe文件),而不会显示控制台。 在某些问题中,我找到了解决方案,即执行该程序。在启动时,通过vbs脚本运行bat文件的问题
@ECHO OFF
python "<absolute_path_here>\filewriter.py"
EXIT /B
VBS文件:
while count != 1000:
f = open('test.txt','a+')
f.write(str(count))
f.close()
sleep 1
BAT文件tool.bat - 现在,我用一个简单的Python程序filewriter.py,做测试出来
Set WinScriptHost = CreateObject("WScript.Shell")
WinScriptHost.Run Chr(34) & "<absolute_path_here>\tool.bat" & Chr(34), 0
Set WinScriptHost = Nothing
如果我执行VBS文件(双击它),一切工作正常。输出文件出现,不显示控制台。所以我把它添加到注册表中,作为WScript“path_to_the_vbs_file”的
HKCU\Software\Microsoft\CurrenVersion\Run
。
在启动时,VBS文件正常执行(通过添加一个显示弹出框的MsgBox来验证它),但是没有执行对bat文件的调用。我如何完成这项工作?
在Windows中有两个python可执行文件:python.exe
,pythonw.exe
。如果您不希望看到终端窗口,则必须使用pythonw.exe
。
我需要运行一个程序(一个python脚本制作成exe文件)。
如果你的py2exe
帮助隐蔽你的脚本.exe
这是呈三角。您可以将脚本分配到console
或windows
。看看Py2exe Tutorial,console
变量可以替换为windows
。
你不需要从python创建EXE文件。您可以将路径作为参数运行pythonw.exe
作为脚本。为什么你需要创建,你从vbscript
运行?看这里:Run on windows startup CMD with arguments
我忘了说,Windows的Python安装程序通常会创建下面的文件关联,所以脚本可以直接运行。
- '的.py' 到
python.exe
- '.pyw' 到
pythonw.exe
其他方式如何,你可以在启动时运行的脚本是使用Windows调度。最大的好处是您可以在启动脚本时设置用户权限或更多事件。您也可以手动运行脚本,并且您将保持状态。
创建Python .exe
有时很棘手。如果您不需要将脚本分发到多台计算机,我宁愿不要使用。
哦。我在转换它时将它分配给了控制台而不是窗口。这消除了所有这些VBS和BAT文件的需要。非常感谢。 – akshayub