windows - python 文件读写 权限 permission denied
伊谢尔伦
伊谢尔伦 2017-04-18 09:39:05
0
3
3843

我写了一个python小工具,安装在C:\Program Files (x86)\appname目录下,可是无法创建和读写文件,出现permission denied错误提示。
之前程序是可以在C:\Users\XXX\AppData\Local\VirtualStore\Program Files (x86)创建文件的,因为改了一大堆东西,而且代码也很长,就不贴代码了。
如何做才能在C:\Users\XXX\AppData\Local\VirtualStore\Program Files (x86)\appname创建文件,不关闭UAC,不使用管理员权限。

就像这样的代码:

# -*- coding: utf-8 -*-
with open("a.txt","w")as f:
    pass

操作系统:windows 10 专业版 1607 开启UAC

python 2.7.11

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

répondre à tous(3)
巴扎黑

Cela a quelque chose à voir avec le répertoire. Ce répertoire sous Windows nécessite des droits d'administrateur. Vous pouvez accéder à d'autres répertoires comme le répertoire E:AC pour exploiter les fichiers

.
Peter_Zhu

Veuillez ajouter quelque chose.
J'espère utiliser la virtualisation UAC, mais c'est une pratique que Windows ne préconise pas. La question porte sur les raisons et les solutions à l'échec de la virtualisation UAC. J'ai déjà réussi à virtualiser avec succès, mais je ne sais pas pourquoi cela a échoué.
Donne également la méthode recommandée pour Windows. Créez des fichiers dans d'autres répertoires. Utilisez os.getenv('ALLUSERSPROFILE') ou os.environ.get('ALLUSERSPROFILE') pour obtenir les variables d'environnement système, puis construisez le chemin. Les variables associées incluent LOCALAPPDATA et APPDATA, qui correspondent à différents répertoires. Peut-être qu’avec une méthode appropriée, ce problème disparaîtra. Il est préférable d'obtenir les variables système et de les écrire dans des fichiers au lieu de créer des dossiers sur le lecteur C ou sur d'autres lecteurs. Que se passe-t-il s'il n'y a pas d'autre lettre de lecteur DEF ou si la lettre de lecteur système n'est pas le lecteur C ? Le programme ne doit pas être écrit à mort. Il est préférable de suivre les suggestions de Microsoft et les pratiques convenues par chacun. Enfin, je déplore que segmentfault ne soit pas assez actif. Les questions que j'ai posées sont essentiellement posées et répondues. Je me plains encore, l'éditeur de texte n'est pas simple à utiliser.

Liens relatifs à l'UAC

Ty80

Vous pouvez diviser les autorisations de répertoire. Si vous devez créer des fichiers dans ce répertoire, accordez à ce dossier des autorisations d'écriture. L'héritage des autorisations dépend de vos besoins

.
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal