关于pyinstall打包文件打开的问题
请问各位大佬,我用python编写了一段打开保存文件的代码(就是简单的输入文件名、输入内容、保存的简单程序,存在':w'的终止行为):之后用pyinstaller进行包装成为text.exe,但是我当我用‘此电脑’的‘快速搜索‘功能,打开这个文件只是输入文件名按回车准备书写内容时却显示:
PermissionError:Permission denied:'xxx'(此处不是面板显示内容:xxx代表我输入的文件名)
Failed to execute script text
之后快速闪退
但是如果按照文件夹逐层打开后找到text.txt文件,则可以正常运行,可以正常输入文件名,按下回车后也可以输入内容。
我的疑问是:
请问为什么相同的文件用不同的查找方式打开,会出现不同的结果?
这个问题真的百思不得其解,请大佬们帮忙求解一下。
’ 是不是放在桌面了,桌面文件夹没有权限的,你可以放到其他盘 Hello. 发表于 2020-4-23 23:55
是不是放在桌面了,桌面文件夹没有权限的,你可以放到其他盘
不是放在桌面上的,那个文件的位置是D:\dist open一个文件不存在,会创建一个文件,创建文件的目录如果没有权限限制,有可能是目录下有一个名字和你创建的文件名字一样的子目录。你最好检查一下test.exe所在目录下的文件结构,顺便发一下源码。 txxcat 发表于 2020-4-24 00:34
open一个文件不存在,会创建一个文件,创建文件的目录如果没有权限限制,有可能是目录下有一个名字和你创建 ...
这是我的文件代码:
print('最后一行输入\':w\'保存')
file_name = input('请输入你想要的文件名:')
f = open(file_name,'w')
temp = []
while True:
content = input('')
if ':w' in content:
break
else:
_str = content + '\n'
temp.append(_str)
f.writelines(temp)
f.close() txxcat 发表于 2020-4-24 00:34
open一个文件不存在,会创建一个文件,创建文件的目录如果没有权限限制,有可能是目录下有一个名字和你创建 ...
主要是在’此电脑‘中用两种不同的方式找到那个文件(text.exe)并且打开,一个报错,一个可以正常运行。在这里很懵。。。。。 本帖最后由 txxcat 于 2020-4-24 01:35 编辑
小泉app 发表于 2020-4-24 00:39
主要是在’此电脑‘中用两种不同的方式找到那个文件(text.exe)并且打开,一个报错,一个可以正常运行。 ...
我添加了print(os.getcwd()),然后打包测试,真相大白,原来在搜索中打开exe,当前目录是C:\Windows\system32。
txxcat 发表于 2020-4-24 01:33
我添加了print(os.getcwd()),然后打包测试,真相大白,原来在搜索中打开exe,当前目录是C:\Windows\sy ...
哦哦,我去试了,确实这个问题出现在这里,非常感谢!!!
页:
[1]