在Windows上启动时运行Python程序

roejwanj  于 2023-02-16  发布在  Windows
关注(0)|答案(5)|浏览(169)

我正在Python上开发一个键盘记录器(只是出于好奇)。脚本将是一个可执行文件。该过程将不需要用户界面或用户交互。
有没有办法,即使在另一个可执行文件,使键盘记录程序开始在启动?

nuypyhwy

nuypyhwy1#

我不使用Windows,但您可以尝试创建一个运行python文件的batch脚本,并使该脚本在Windows启动时自动运行程序:
1.单击开始按钮开始按钮的图片,单击所有程序,右键单击启动文件夹,然后单击打开。
1.打开包含要创建快捷方式的项目的位置。
1.右键单击该项,然后单击“创建快捷方式”。新快捷方式将显示在与原始项相同的位置。
1.将快捷方式拖到启动文件夹中。
正如我所说,我不使用Windows,所以这可能是完全错误的。
您可以引用here来创建BAT文件,该文件基本上是这样的:

@echo off
python c:\somescript.py %*
pause
hkmswyz6

hkmswyz62#

我觉得上面的答案太复杂了,我所做的只是通过点击快速访问工具栏,键入“启动”,将我的文件拖放或复制粘贴到启动文件夹中,工作就完成了。

我使用的是Windows 10操作系统,所以在您的情况下可能会有所不同。
我希望这是有用的。

**编辑:*这个解决方案的关键是在python控制台( 而不是 * 文本编辑器)默认打开.py扩展名的文件,否则它只会打开文件而不会执行它。为了选择打开文件类型的默认程序,右键单击.py文件-〉打开方式-〉选择默认程序。参见这个例子:

gcuhipw9

gcuhipw93#

使用VBScript:
1-〉使用以下数据创建任意名称.vbs:
设置wvbs=CreateObject(“Wscript.Shell”)wvbs.run“文件的完整位置”,0
2-〉复制C:\AppData\Roaming\Microsoft\Windows\开始菜单\程序\启动此文件夹中的任何名称.vbs文件
现在,当windows启动时,它将在隐藏模式下运行您的文件

kxeu7u2r

kxeu7u2r4#

用“Start + R”打开run,然后打开“shell:startup”。它会打开一个文件夹(之前在开始菜单中提到的文件夹),这个文件夹上的每个文件都会在启动时运行。
文件夹路径为:"C:\Users\USERNAME\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"(你可以在windows资源管理器上复制它,或者复制这个路径并把你的帐户名放在USERNAME上)
这是我在脚本中使用的技巧:

from os import getcwd
from shutil import copy
copy(getcwd()+'/FILE_NAME.exe','C:/Users/USERNAME/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup')

他们是一些方式的文件名以及,但我不熟悉它。这段代码复制自己到启动文件夹,并开始每次windows启动

ccgok5k5

ccgok5k55#

shell:startup文件夹中创建一个快捷方式,其中包含pythonw.exe可执行文件的绝对路径。需要使用w版本的Python,以便在后台启动时没有shell。

详细说明

打开启动文件夹

同时键入Windows键和R键。在"运行"对话框中,键入shell:startup,然后回车。这会将您带到"启动"文件夹。当计算机启动时,此文件夹中的快捷方式会启动。(对我来说,启动文件夹位于C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup。)

创建新快捷方式

右键点击这个文件夹并说"新建快捷方式"。浏览到"这台电脑"、"Windows(C:)"、"程序文件"、"Python39",然后选择pythonw.exe。你的Python安装可能在不同的位置。最近,Python在% appdata %中找到。(你可以将% appdata %粘贴到运行对话框中打开这个文件夹并查找Python。默认情况下,它在漫游中打开,但也要确保在本地中查找。)
如本答案开头所述,选择pythonw.exe而不是python.exe非常重要,因为pythonw.exe将在不打开命令提示符的情况下运行。
在下一个"创建快捷方式"屏幕上,标题为"你想给快捷方式起什么名字",你可以给它起任何你想要的名字。对于OP,我推荐"自渗透测试"。
单击"完成"。

编辑启动脚本的快捷方式

在启动文件夹中,右键单击您刚刚创建的应用程序,然后选择"属性"。
在Properties对话框的Shortcut选项卡中,将"Target"编辑为类似于"C:\Program Files\Python310\pythonw.exe" pentest_keylogger.py,将"Start in"编辑为pentest_keylogger.py所在的文件夹(如上所述,您需要使用Python发行版的路径)。

测试您的脚本

点击OK,然后双击图标,看看它是否如你所希望的那样安静地工作。
最后,重新启动计算机,使用resmon(从运行对话框)或Ctl-Alt-Delete和任务管理器查看应用是否在后台运行。

致谢

感谢Eryk Sun和Behfar baghery在这里提出的核心思想。

相关问题