PermissionError: [WinError 5] Доступ запрещен - PullRequest
0 голосов
/ 16 января 2020

Я пытаюсь вызвать python программу с subprocess, но получаю ошибку разрешения. Я пытался запустить PyCharm как администратор, но это не помогло.

Мой код:

answer = subprocess.check_output("../folder python program %s %s" %(valueA, valueB), encoding = 'utf8')

Ошибка:

Traceback (most recent call last):
  File "C:/Users/User/PycharmProjects/a/b/b_resolution.py", line 35, in <module>
    answer = subprocess.check_output("../folder python program %s %s" %(valueA, valueB), encoding = 'utf8')
  File "C:\Users\User\AppData\Local\Programs\Python\Python37-32\Lib\subprocess.py", line 376, in check_output
    **kwargs).stdout
  File "C:\Users\User\AppData\Local\Programs\Python\Python37-32\Lib\subprocess.py", line 453, in run
    with Popen(*popenargs, **kwargs) as process:
  File "C:\Users\User\AppData\Local\Programs\Python\Python37-32\Lib\subprocess.py", line 756, in __init__
    restore_signals, start_new_session)
  File "C:\Users\User\AppData\Local\Programs\Python\Python37-32\Lib\subprocess.py", line 1155, in _execute_child
    startupinfo)
PermissionError: [WinError 5] Access Denied

Кто-то знает, как я можно исправить эту ошибку разрешения?

Ответы [ 2 ]

0 голосов
/ 16 января 2020

Я сам исправил проблему, команда python предшествует пути. Вот так:

answer = subprocess.check_output("python ../folder program %s %s" %(valueA, valueB), encoding = 'utf8')

Но у меня возникла проблема, которая гласит:

can't find '__main__' module in '../pydig'

Решено также с написанием имени программы, включенного в путь:

answer = subprocess.check_output("python ../folder/program %s %s" %(valueA, valueB), encoding = 'utf8')
0 голосов
/ 16 января 2020

Проверьте права доступа к файлу для вашего текущего пользователя.

Щелкните правой кнопкой мыши по файлу и в безопасности вы увидите права доступа к файлам для пользователей.

Если у вас нет разрешения на чтение файла, Дополнительно> Выберите принципала, затем установите флажок c.

...