自动运行中的Python应用程序不';无法打开文件

自动运行中的Python应用程序不';无法打开文件,python,windows,ioexception,pyinstaller,autorun,Python,Windows,Ioexception,Pyinstaller,Autorun,我创建了一个在windows启动时运行的应用程序,但每次它都会给我一个错误: [Errno 2] No such file or directory: 'user' 这个错误只有在启动时才会发生,如果我正常打开它(双击),它工作正常 注意:我使用Pyinstaller创建了.exe,名为“user”的文件位于.exe的同一目录下(程序文件/App1/main.exe) 也许自动运行就像一个临时文件夹,无法识别程序文件目录的内容?您的程序不应该指望当前工作目录与运行它的目录相同。如果用户从命令行

我创建了一个在windows启动时运行的应用程序,但每次它都会给我一个错误:

[Errno 2] No such file or directory: 'user'
这个错误只有在启动时才会发生,如果我正常打开它(双击),它工作正常

注意:我使用Pyinstaller创建了.exe,名为“user”的文件位于.exe的同一目录下(程序文件/App1/main.exe)


也许自动运行就像一个临时文件夹,无法识别程序文件目录的内容?

您的程序不应该指望当前工作目录与运行它的目录相同。如果用户从命令行运行您的程序,或者您将其放入批处理文件中,或者您从自动运行启动它,或者其他程序尝试运行它…在所有这些情况下,工作目录将位于其他地方

sys.argv[0]
提供程序的路径。因此:

import sys
import os
scriptdir = os.path.dirname(os.path.abspath(sys.argv[0]))
userpath = os.path.join(scriptdir, 'user.exe')