FAQ: 运行在进程中的脚本工具(Script tool)遵守微软的安全设置吗?
文章编号 : 38681
软件: ArcGIS - ArcEditor 8.1, 8.1.2, 8.2, 8.3, 9.0, 9.1, 9.2, 9.3, 9.3.1, 10 ArcGIS - ArcInfo 8.0.1, 8.0.2, 8.1, 8.1.2, 8.2, 8.3, 9.0, 9.1, 9.2, 9.3, 9.3.1, 10 ArcGIS - ArcView 8.1, 8.1.2, 8.2, 8.3, 9.0, 9.1, 9.2, 9.3, 9.3.1, 10
操作系统: Windows 2003Server, Vista, 2008Server, Win 7
软件: ArcGIS - ArcEditor 8.1, 8.1.2, 8.2, 8.3, 9.0, 9.1, 9.2, 9.3, 9.3.1, 10 ArcGIS - ArcInfo 8.0.1, 8.0.2, 8.1, 8.1.2, 8.2, 8.3, 9.0, 9.1, 9.2, 9.3, 9.3.1, 10 ArcGIS - ArcView 8.1, 8.1.2, 8.2, 8.3, 9.0, 9.1, 9.2, 9.3, 9.3.1, 10
操作系统: Windows 2003Server, Vista, 2008Server, Win 7
1 个回复
易智瑞技术支持
赞同来自:
运行在进程中的脚本工具(Script tool)遵守微软的安全设置吗?
回答: 答案是不遵守。运行在进程中的脚本工具(Script tool)不遵守设置在.py文件和其在的文件夹上所设置的安全。
应用在文件或文件夹上的安全设置适用于单个的基础应用程序。
Examples
现在有个Python文件是x.py,其中将”Execute File”这个安全属性不勾选。当在不同的环境中执行,会有不同的效果。
Example1:在windows的运行(Run)命令行里执行:Start>Run
Executes successfully:
c:\Python27\python.exe e:\bugs\perm\x.py
e:\bugs\perm\x.py
cmd.exe /c c:\Python27\python.exe e:\bugs\perm\x.py
Execution is denied:
cmd.exe /c e:\bugs\10.1\perm\x.py
Example2:在命令行里执行(CMD.exe)
Executes successfully:
E:\bugs\>c:\Python27\python.exe e:\bugs\perm\x.py
Execution is denied:
E:\bugs\>e:\bugs\perm\x.py
Example3:在Windows Explorer里执行
Executes succesfully:
double click 'x.py'
进程外的脚本工具会使用cmd.exe去执行这个工具,它会检测安全设置,并遵守这个安全设置的。
相关的知识:
注意:
只有如下所示导入 ArcPy 的脚本(或使用 arcgisscripting.create() 创建地理处理器对象的脚本)可以在进程中运行。
import arcpy
注意:
即使选中在进程中运行 Python 脚本,使用 dispatch 的脚本(如下所示)也不会在进程中运行。
import win32com.client
gp = win32com.client.Dispatch("esriGeoprocessing.GpDispatch.1")
在进程中运行 Python 脚本选项在 ArcGIS 9.3 中已可用。对于 9.3 之前的版本,Python 脚本在进程外运行。在进程外运行需要 ArcGIS 启动另一个进程(可视为启动另一个程序),这需要花费一些时间。此外,如果在进程外运行,两个进程之间的消息通信还存在性能问题。从 9.3 版本开始,ArcGIS 融入了 Python,使脚本得以在进程中运行,从而省去了所有启动时间和信息传递的开销。
在进程中运行要求使用 Python 导入指令加载的所有模块均具有必要的逻辑,以使其在进程中运行。所有的标准 Python 库(例如 os、string 和 time)都包含必要的逻辑。但是,第三方处获得的非标准模块可能不包含要在进程中运行所需的必要逻辑。如果在脚本运行时遇到了费解的问题,请尝试取消选中进程内选项,然后再次运行脚本。如果在进程外运行时不存在该问题,则很可能是导入的某个模块存在问题。这种情况下,应将此选项保持在取消选中状态。
创建时间:2010-10-08
最近更新: 2011-03-24
【原文链接】
http://support.esrichina.com.c ... .html
要回复问题请先登录或注册