Python из PHP на сервере IIS [WinError -2147024891] Доступ запрещен - PullRequest
0 голосов
/ 14 апреля 2020

я пытаюсь запустить сценарий Python, используя PHP в IIS win 8.1 для преобразования файла Docx в PDF

import sys
import os
import comtypes.client
import random
import string
import qrcode
import fitz
from PyPDF2 import PdfFileReader
import json
import base64
import getpass

errordata=0
_output=[]

# convert Docx file into pdf file
def word_to_pdf(_in):
    global errordata
    pdf_format_key = 17

    try:
        file_in = os.path.abspath(_in)
        head =os.path.split(_in)
        _out=str((head[0]+'\\'+os.path.splitext(head[1])[0]+'.pdf'))
        file_out = os.path.abspath(_out)

        worddoc = comtypes.client.CreateObject('word.application')
        doc = worddoc.Documents.open(file_in)
        print ("documnt open")
        doc.SaveAs(file_out,FileFormat=pdf_format_key)

        errordata=0
        _output.append('convert to PDF Success')
    except Exception as e:
        errordata=1
        _output.append('convert to PDF Error' + str(e))

    finally:    
        print(_output)
        if errordata==0:
            randid='_'+ id_generator(30, string.ascii_uppercase + string.digits)
            qr_generator(randid,_out)


word_to_pdf(sys.argv[1])

, вот как я называю python из PHP:

<?php
$result = shell_exec('C:\Users\IT\AppData\Local\Programs\Python\Python38-32\python C:\inetpub\wwwroot\PyTest\document_control.py C:\inetpub\wwwroot\PyTest\upload\testdoc.docx 2>&1');
echo($result);
?>

при запуске PHP выдается ошибка: [WinError -2147024891] Access is denied']

я запускаю скрипт из cmd Administrator и пользователя cmd скрипт запускается, как я ожидал

я пытаюсь дать всем право на чтение / запись для загрузки папки, но ошибка все еще сохраняется

пожалуйста, ребята, вытащите меня

...