use*_*ca8 6 microsoft-office microsoft-office-2016 office-deployment-tool
我正在尝试使用 Office 部署工具 2016 (ODT) 从预下载的安装包安装 Office 2016(商业订阅)。
微软支持已经给我提供了与1.06GB安装包,我已经下载并放置在一个目录下C:\odt\Office
,这样的数据文件的路径是这样的:C:\odt\Office\Data\16.0.4229.1029\stream.x86.x-none.dat
和C:\odt\Office\Data\16.0.4229.1029\stream.x86.en-us.dat
我有 ODT setup.exe 文件C:\odt\Office
和具有适当设置的 Configuration.xml 文件,例如:
<Configuration>
<Add OfficeClientEdition="32" Branch="Current">
<Product ID="O365BusinessRetail">
<Language ID="en-us" />
</Product>
</Add>
</Configuration>
Run Code Online (Sandbox Code Playgroud)
我已经确认这O365BusinessRetail
是 ODT 支持的产品 ID 之一,并且它是我订阅的适当 ID。微软支持给我的文件被命名为Office 365 Business 2016
似乎对应。
我的问题是,当我使用这样的命令以管理员身份运行 setup.exe 时...
...它忽略现有文件并尝试再次下载该包。我所在的国家/地区的互联网连接质量很差,而且 MS 下载器对暂时的连接中断非常敏感,并且无法恢复中断的下载:重新下载文件不是一种选择。
它给出了这个错误,这表明它正在尝试下载一个文件。从研究来看,它模糊地暗示的“必需文件”似乎是 1.06GB 安装包,它(似乎是不必要地)试图重新下载:
无法安装
很抱歉,我们无法继续,因为我们无法下载所需的文件。请确保您已连接到 Internet 或连接到其他网络,然后重试。
错误代码:30182-1011 (3)
我已经确定它正在找到正确的 XML 文件,并且 XML 是有效的,因为如果我故意提供不正确的配置路径或故意破坏 XML 文件,它会给出不同的错误代码(错误代码:0-1008 (0) )。
如果我重命名Office
文件夹或向SourcePath
(例如<Add OfficeClientEdition="32" Branch="Current" SourcePath="C:\fail" >
)添加不存在的路径,我得到的错误代码也与我得到的错误代码相同
如果我将正确的 SourcePath ( SourcePath="C:\odt\Office"
)添加为没有 SourePath,我会得到相同的结果,这是预期的结果,因为根据配置 XML 文档,没有添加源路径,它会在它所在的目录中查找“Office”。
我还尝试将包文件中的版本号作为固定版本添加到 XML 中,以防 MS 支持给我的版本不是最新的并且因此拒绝它。我也试过切换Branch
到Business
我看到参考中允许的值。都没有帮助。例如:
<Add OfficeClientEdition="32" Branch="Business" Version="16.0.4229.1029" SourcePath="C:\odt\Office">
Run Code Online (Sandbox Code Playgroud)
我也尝试过使用该setup.exe /packager
命令,指定一个有效的配置文件和一个输出文件夹,以防我的包需要以某种方式重新打包,但它有完全相同的问题和错误。
我想出了如何访问 ODT 的日志文件。以下是示例日志文件的前几行。我相信这是相关的部分,因为此后的所有内容(大约 350 行)似乎都与尝试获得网络访问权限有关,并且似乎已经得出结论,它需要运行.ExecuteDownloadFile
. 我相信“网络成本管理器”是检查是否有计量连接正在使用的任何东西;而cab
它是指文件(v32_16.0.4229.1029.cab
)确实存在- C:\odt\Office\Data\v32_16.0.4229.1029.cab
-它不是从这个日志,如果它成功或失败中找到此文件清楚地知道,这似乎是一个重要的步骤:
Timestamp Process TID Area Category EventID Level Message Correlation
11/20/2015 13:25:15.407 SETUP (0xbdc) 0xad8 Click-To-Run aoh85 Medium AdminConfigure::HandleStateAction: Configuring an install/crosssell scenario.
11/20/2015 13:25:15.422 SETUP (0xbdc) 0xad8 Click-To-Run aqdco Monitorable TryCheckNetworkCost::HandleStateAction: Failed to initialize NetworkCostManager for http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60. Assuming low cost and proceeding.
11/20/2015 13:25:15.422 SETUP (0xbdc) 0xad8 Click-To-Run aon8k Medium CabManager::DetermineCabName: Type:0, Platform:x86, Version:16.0.4229.1029, Culture: -> v32_16.0.4229.1029.cab
11/20/2015 13:25:15.422 SETUP (0xbdc) 0xad8 Click-To-Run aoh9i Medium TryGetVersionDescriptor::HandleStateAction: Getting Cab: v32_16.0.4229.1029.cab
11/20/2015 13:25:15.422 SETUP (0xbdc) 0xad8 Scope a6pk5 Medium {"ScopeAction": "Start", "ScopeName": "ClickToRun.TransportRetry.ExecuteDownloadFile", "ScopeInstance": 3, "ScopeParentInstance": 0} F6A9F7B0-FE40-4FD4-A41A-CC60C5768E09
11/20/2015 13:25:15.438 SETUP (0xbdc) 0xad8 Identity Http Client axieo Medium [CWinHttpHelperBase] AutomaticProxyConfiguration {"Message": "InitSession detected proxy auto detect."} F6A9F7B0-FE40-4FD4-A41A-CC60C5768E09
11/20/2015 13:25:15.469 SETUP (0xbdc) 0xad8 Identity Http Client a9ido Medium [HttpUtil] IsKnownProxyError {"SH_ErrorCode": 12007, "Message": "Detected a proxy failure"} F6A9F7B0-FE40-4FD4-A41A-CC60C5768E09
Run Code Online (Sandbox Code Playgroud)
这是在配置文件中指定的版本,如果没有,则第 4 行结束TryGetVersionDescriptor::HandleStateAction: Getting Cab: v32.ca
,它也存在于同一文件夹中。如果我指定一个不存在的版本,那么一切看起来都与我指定一个确实存在的版本完全相同——这可能是它无法找到cab
文件的线索。
但是,如果我给它一个 non-existent SourcePath
,我会得到一个错误,没有等价的没有错误的源路径:
failed to open file 'C:\\odt\\fakefolder\\Office\\Data\\v32_16.0.4229.1030.cab
Run Code Online (Sandbox Code Playgroud)
我完全被难住了,MS 支持正在努力提供帮助,因为我遵循了他们的所有标准步骤。
如何找出 ODT 可能拒绝或看不到这些预下载的可安装文件的原因?ODT 在任何时候实际上在做什么似乎是完全不透明的 - 在它失败之前,它只会给出一个无用的橙色框,上面写着“我们正在准备就绪”。
如果相关,我正在尝试在 Windows 8.1 机器上安装。
我终于在ODT 日志文件的帮助下破解了它。
基本上,不像文档说什么,手动设置SourcePath
是强制性的,如果你想有一个本地/离线安装,和源路径应排除的安装包(所以要的顶级目录名称不结尾Office
,除非你有一个文件夹名为 Office 的另一个文件夹中名为 Office)。
我的问题是由Microsoft 的配置文件参考页面中的两个误导/过时的点引起的,再加上安装程序 UI 中完全缺乏反馈。具体来说:
C:\Preload\Office
- 所以我类似地输入了我的源路径:C:\odt\Office
,包括“Office”,顶级包文件夹的名称。这导致安装程序无法找到我下载的文件 - 它应该排除包的文件夹名称。我的源路径应该是SourcePath="C:\odt"
,微软的例子应该是C:\Preload
(或者,他们应该有一个注释说这仅适用于像这样的路径C:\Preload\Office\Office\Data\etc...
如果在配置模式下未指定 SourcePath,安装程序将在当前文件夹中查找 Office 源文件。如果在当前文件夹中找不到 Office 源文件,安装程序将在 Office 365 上查找它们。
也许 Office 2013 是这样,我不知道,但根据我的反复试验时间,Office 2016 似乎正好相反。
当我SourcePath
在配置文件中使用 no 运行 setup.exe 时,它在检查本地副本之前先在线查看,并开始下载而不是在同一目录中的默认位置使用本地副本。
<speculation>
我想这样的变化会符合微软对更新的态度转变,在2012年大致是“谨慎使用最新版本,它可能会破坏东西”,而今天大致是“如果有疑问,更新更新更新”?</speculation>
我的工作设置如下所示:
<Configuration>
<Add OfficeClientEdition="32" Branch="Current" Version="16.0.4229.1029" SourcePath="C:\odt">
<Product ID="O365BusinessRetail">
<Language ID="en-us" />
</Product>
</Add>
<Logging Level="Standard" Path="C:\odt\log" />
</Configuration>
Run Code Online (Sandbox Code Playgroud)
我不相信版本号是必不可少的(而且我不会重新安装以找出答案!);如果有类似问题的人发现他们确实需要他们的,我会从Office\Data
.
如果有人知道我如何向 Microsoft 报告文档问题,请给我留言。