“Program Files (x86)”的可执行读取权限
我写了一个Python程序,并把它打包成了一个可执行文件。现在遇到的问题是,它无法读取或写入一些支持文件的内容。我知道这是因为权限问题,因为Program Files (x86)
这个文件夹是受保护的。我希望把支持文件放在和可执行文件同一个文件夹里,这样用户就不能随意修改它们,而且我的Python程序也能在本地找到这些文件。
我尝试过更改权限,但我不太确定哪个权限设置决定了我的可执行文件是否能在本地文件夹中读取或写入。
1 个回答
0
如果我理解得没错,你想让你的程序在当前文件夹里运行并编辑文件。默认情况下,用户启动的程序会使用用户的权限来运行。
如果你想防止用户编辑那些应用程序的配置文件,有几个小技巧:
可以把你的应用程序放在一个DOS批处理文件里。在这个批处理文件中,使用“runas”命令来用一个不同的账户启动你的应用,这个账户需要有执行和写入这些配置文件的权限。确保启动程序的用户没有写入权限。这样应该能解决你的问题。
与其使用普通的文本文件作为配置文件,不如试试用SQLite数据库?或者对文件进行加密。无论哪种方式,结果都是一样的,用户可能能打开文件,但用普通的文本编辑器看不懂里面的内容。