ArcGIS Desktop

  • 文档
  • 支持

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS for Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

Help

  • 主页
  • 入门
  • 制图
  • 分析
  • 管理数据
  • 工具
  • 更多...

Unpack Product Files

  • 摘要
  • 用法
  • 语法
  • 代码示例
  • 环境
  • 许可信息

摘要

Esri Defense Mapping tool that copies and extracts selected product files to the path provided by the user. It also sets a registry key to the provided path to be used by any of the Defense Mapping tools in obtaining paths to the product files.

用法

  • This tool is intended for users who have limited, non-administrative privileges to the Defense Mapping installation folder. Unpacking the Defense Mapping product files to a folder that the user has read/write access privileges to allows them to use Defense Mapping tools that require access to the installed product files.

  • This tool should be run after installing Defense Mapping and before running any of the Defense Mapping tools.

  • If a custom location is not used, this tool should be run with C:\Program Files (x86)\ArcGIS\EsriDefenseMapping\10.3.1 as the New Location path.

  • This tool sets a user registry key value that is only for the current user; if there are multiple users on a single machine, this tool should be run separately for each user.

  • This tool will copy files and set a registry key for every user that runs this tool; if all users select the same output location for the files, the tool should be run using the UPDATE_PATH_ONLY option for each additional user to avoid the product files being copied for every user.

  • If multiple users run this tool with different output locations, the tool will copy and extract the product files to each of the specified output folders causing an impact on hard drive storage. It is recommended that all users use the same output location and run the tool using the UPDATE_PATH_ONLY option.

  • If running this tool on a server, it must be run as the arcgis user in addition to any named users.

语法

UnpackProductFiles_defense (in_current_folder, in_copy_products, in_new_folder, {in_products})
参数说明数据类型
in_current_folder

The current folder that is set in the registry. If no value is set, this defaults to the installation directory.

String
in_copy_products

Determines if this tool will copy product files to a new location or only update the registry key.

  • COPY_AND_UPDATE_PATH —Copies all specified product files, extracts all zipped folders, and updates the registry key.
  • UPDATE_PATH_ONLY —Only updates the registry key.
Boolean
in_new_folder

Path to folder that will be used as the product files directory. This path is written to the registry key.

Folder
in_products
(可选)

Selection of products to copy and extract to the location set in the in_new_folder parameter.

String

代码示例

UnpackProductFiles example 1 (Python window)

The following code sample demonstrates running the tool for the first time on a machine.

# Importing necessary modules
from arcpy import defense

# Setting parameters
current_folder = r'C:\Program Files (x86)\ArcGIS\EsriDefenseMapping\Desktop10.5'
new_folder = r'C:\Data\ProductFiles'
products ="Geonames;Mgcp;ReferenceData;Tds;VMap1JOG"

# Calling Unpack Product Files tool
defense.UnpackProductFiles(current_folder, "COPY_AND_UPDATE_PATH", new_folder, products)
UnpackProductFiles example 2 (Python window)

The following code sample demonstrates running the tool for another user on the machine where the tool has run before, or how to run this tool once the registry key has been set.

"""This example is for running the tool for a second user on a machine where this tool has already been run, or when running this tool when the registry key has already been set"""
# Importing necessary modules
from _winreg import OpenKeyEx, HKEY_LOCAL_MACHINE, HKEY_CURRENT_USER, QueryValueEx, CloseKey
from arcpy import defense, GetInstallInfo
from os import path

# Getting value for the currently set registry key; if there is none for this user, get the install path key
install_info = GetInstallInfo()
if install_info['ProductName'] == 'Desktop':
    product_key = 'SOFTWARE\\EsriProduction\\Desktop{}\\ESRIDefenseMapping\\Settings'.format(install_info['Version'][:4])
    install_key = 'Software\\ESRIProduction\\Desktop{}\\ESRIDefenseMapping'.format(install_info['Version'][:4])
elif install_info['ProductName'] == 'Server':
    product_key = 'SOFTWARE\\EsriProduction\\Server{}\\ESRIDefenseMapping\\Settings'.format(install_info['Version'][:4])
    install_key = 'Software\\EsriProduction\\Server{}\\EsriDefenseMapping'.format(install_info['Version'][:4])
try:
    hkey = OpenKeyEx(HKEY_CURRENT_USER, product_key)
    registry_value, typ = QueryValueEx(hkey, 'ProductFilePath')
except:
    hkey = OpenKeyEx(HKEY_LOCAL_MACHINE, install_key)
    registry_value, typ = QueryValueEx(hkey, 'InstallDir')
CloseKey(hkey)

# Setting parameters
current_folder = path.abspath(registry_value)
new_folder = r'C:\Data\ProductFiles'
products ="Geonames;Mgcp;ReferenceData;Tds;VMap1JOG"

# Calling Unpack Product Files tool
defense.UnpackProductFiles(current_folder, "UPDATE_PATH_ONLY", new_folder, products)

环境

  • 当前工作空间

许可信息

  • ArcGIS Desktop Basic: 否
  • ArcGIS Desktop Standard: 需要 Defense Mapping
  • ArcGIS Desktop Advanced: 需要 Defense Mapping

相关主题

  • An overview of the Utilities toolset

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS 平台

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • 内部人员博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2017 Esri. | 隐私政策 | 法律声明