Python脚本赢得';t在IIS 7.5中执行批处理文件

Python脚本赢得';t在IIS 7.5中执行批处理文件,python,batch-file,iis,gis,batch-processing,Python,Batch File,Iis,Gis,Batch Processing,我有一个python脚本,它根据脚本从图像元数据收集的参数来自动化Erdas图像处理软件。python脚本将这些参数收集到一个列表中,该列表被写入一个批处理文件,然后运行批处理文件,该文件通知Erdas软件处理图像。当我在IIS目录之外运行此脚本时,脚本工作得非常好。但是,当我在IIS目录中运行脚本时,该脚本会部分运行,但在尝试运行批处理文件时会显示错误消息。仅供参考,我到处寻找这个问题的解决方案。我尝试过更改文件夹和文件权限以及IIS管理器设置,但没有成功。以下是错误消息: Traceback

我有一个python脚本,它根据脚本从图像元数据收集的参数来自动化Erdas图像处理软件。python脚本将这些参数收集到一个列表中,该列表被写入一个批处理文件,然后运行批处理文件,该文件通知Erdas软件处理图像。当我在IIS目录之外运行此脚本时,脚本工作得非常好。但是,当我在IIS目录中运行脚本时,该脚本会部分运行,但在尝试运行批处理文件时会显示错误消息。仅供参考,我到处寻找这个问题的解决方案。我尝试过更改文件夹和文件权限以及IIS管理器设置,但没有成功。以下是错误消息:

Traceback (most recent call last):
  File "python_page.py", line 1018, in <module>
    main()
  File "python_page.py", line 1002, in main
   getAtmCorrectBatchFile(AtmCorrectBatchlist)
  File "python_page.py", line 912, in getAtmCorrectBatchFile
    f = open(basePath + '/atm_batch_process.bat', 'w')
IOError: [Errno 13] Permission denied: 'C:/inetpub/wwwroot/cgi-bin/atm_batch_process.bat'
下面是发生错误的代码。我最困惑的是,错误位于创建批处理文件的
getAtmCorrectBatchFile()
函数中,但当脚本试图调用它正下方列出的
RunAtmCorrectBatch()函数时,就会出现错误。此时脚本已成功创建批处理文件并将其保存在cgi bin目录中,那么为什么错误会出现在创建批处理文件的函数中,而不是尝试运行批处理文件的函数中

编辑:我可以右键单击cgi-bin目录中的批处理文件并选择run,这将成功输出处理后的图像,只是由于某些原因,当python脚本尝试运行批处理文件时,这不起作用

def getAtmCorrectBatchFile(batchlist):
    f = open(basePath + '/atm_batch_process.bat', 'w') #line 912
    for i in range (0, len(batchlist)):
        f.write(str(batchlist[i]).replace('\\', '/') +'\n')
    f.close()


def RunAtmCorrectBatch():
    try:
        from subprocess import Popen
        p = Popen("/atm_batch_process.bat", cwd=basePath)
        stdout, stderr = p.communicate()
    except WindowsError:
        pass