使用 Office 文件转换器 (OFC) 和版本提取工具 (VET) 转换二进制 Office 文件

 

适用于: Office 2010

上一次修改主题: 2016-11-29

Office 迁移规划管理器 (OMPM) 包括两种工具,可帮助您在迁移到 Microsoft Office 2010 期间管理二进制 Office 文件。可以使用 Office 文件转换器 (OFC) 将二进制文件批量转换成 Office 2010 和 2007 Office system 使用的 OpenXML 格式。使用版本提取工具 (VET) 将单个 Word 97–2003 文档的多个保存版本提取为单独的文件。这两种工具通常与 OMPM 生成的扫描结果一起使用。

使用 OFC 批量转换文件

使用 OFC 之前,请先查看以下使用指南。

  • Microsoft Office 兼容包必须安装在包含要转换的文件的计算机上。有关详细信息,请参阅Word、Excel 和 PowerPoint 文件格式的 Microsoft Office 兼容包 (https://www.microsoft.com/downloads/zh-cn/details.aspx?familyid=941b3470-3ae9-4aee-8f43-c6bb74cd1466)。

  • OFC 将二进制 .doc 文件转换为 Word 2007 使用的 .docx 文件格式。因此,当用户在 Word 2010 中打开已转换的 .docx 文件时,该文件将以 Word 2007 兼容模式打开。OFC 不支持将 .doc 文件转换为 Word 2010 .docx 格式。用户可以分别将这些文件转换为 Word 2010 .docx 格式,方法是单击“文件”选项卡,再单击“转换”。

  • OFC 可以转换的最大深度达 10 个文件夹。例如,DestinationPathTemplate=I:\Converted\*1\*2\*3\*4\*5\*6\*7\*8\*9\ 可以正常工作。但是,DestinationPathTemplate=I:\Converted\*1\*2\*3\*4\*5\*6\*7\*8\*9\*10\ 无法工作。要解决此问题,请使用如 net use 或 subst 命令来缩短路径。

运行 Office 文件转换器之前,请先编辑 ofc.ini 文件以设置正确的参数。

转换文件

  1. 在命令提示符处,导航到安装 OFC 的文件夹。

  2. 键入以下命令:

    ofc <ofc.ini>

该命令的参数如下所示。

参数 描述

ofc.ini

ofc.ini 文件的位置。如果没有指定任何路径,OFC 会在相同的目录中查找可执行文件。可选。

备注

如果将 FileListFolder 和 FoldersToConvert 设置为相同的文件集,则该文件集将被转换两次。

Ofc.ini 设置

下表显示了 ofc.ini 中的设置和值。

设置 描述 可能的值 如果值丢失 如果值无效

[Run]

列出该转换的唯一 ID 和描述的节。必需。

转换停止并出现错误消息。

错误:OFC.INI 中的 [Run] 节标题无效或丢失。

RunID

当前转换的跟踪号码。使用此号码将报告工具中不同计算机上的转换分组。必需。

必须是数字

转换停止并出现错误消息。

错误:OFC.INI 中的 RunID 值无效或丢失。

描述

用于描述当前运行的转换的文本。可选。

任意格式的文本,最多 255 个字符

忽略。

不适用。

LogDestinationPath

使用 FileList 设置时生成的日志文件的位置。必需。

该设置不会生成捕获文本的日志文件,该文本显示在转换期间的命令提示窗口中。使用“>”命令(例如 ofc.exe > C:\Log.txt)将任何命令外壳输出保存到文本文件。

物理驱动器、映射驱动器或 UNC。例如:c:\Conversion\logs

\\server\vba\logs

还支持环境变量。

转换停止并出现错误消息。

错误:OFC.INI 中的 LogDestinationPath 值无效或丢失。

[ConversionOptions]

处理转换选项的 .INI 文件的节标头。必需(除非 .ini 文件中没有指定任何转换选项)。

转换停止并出现错误消息。

错误:OFC.INI 中的 [ConversionOptions] 节标头无效或丢失。

DoNotCab

可以让用户禁止创建日志文件的 CAB 文件。可选。

有效值包括

1 – 禁止创建日志文件的 CAB 文件

0 – 允许创建日志文件的 CAB 文件

转换停止并出现错误消息。

错误:OFC.INI 中的 DoNotCab 值无效或丢失。

MacroControl

确定转换期间转换器是否包括任何宏项目。设为 1 将导致 OFC 创建未启用宏的 OpenXML 文档格式(如 .docx、xlsx、pptx)。原始文档中的 Macro/VBA 代码不会被迁移。可选。

有效值包括

1 – 转换期间忽略 VBA

0 – 与源文档的宏状态匹配。

默认值为 0。

错误: OFC.INI 中的 MacroControl 值无效。

[FoldersToConvert]

列出为独立操作而要转换的目录的节。将忽略 FileList。可选。

文件夹列表。

如果输入文件已通过则忽略。

错误:OFC.INI 中的 [FoldersToConvert] 节无效。

ConvertSubfolders

如果已指定文件夹,则设为 1 将导致在转换所有 Word、XL 和 PPT 文档时,OFC 遍历各子文件夹。可选。

0 或 1

默认值为 0。

错误:OFC.INI 中的 ConvertSubfolders 值无效。

[ConversionInfo]

列出输入文件和目标信息的节。必需。

[ConvertedFolders]

转换停止并出现错误消息。

错误:OFC.INI 中的 [ConversionInfo] 节标头无效或丢失。

FileList

FileList 的路径。可选。

如果不存在且 [FoldersToConvert] 为空,则会出现错误。

SourcePathTemplate

*\ 序列,用于确定将从源路径捕获的目录数量。您可以使用通配符,以便让星号 (*) 表示路径的单个分区。可选。

如果在本地运行 SourcePathTemplate,它将包括网络路径信息。例如,C:\Documents\file.doc 中的文件将被指定为 *1\=machinename、*2\=C:\、*3\=Documents 和 *4\=file.doc

任何物理驱动器、映射驱动器或 UNC。* 或“.”

错误:OFC.INI 中的 SourcePathRoot 值无效。

DestinationPathTemplate

用于确定已转换文件的位置。您可以使用通配符,以便使用星号 (*) 加数字来表示路径的单个分区。请参阅下表中的示例。可选。

任何物理驱动器、映射驱动器或 UNC。* 或“.”

错误: OFC.INI 中的 DestinationPathRoot 值无效。

以下示例向您显示如何使用 SourcePathTemplateDestinationPathTemplate 设置。

示例 1

在此示例中,源文件位于 \\userfiles\<用户名>\docs\,所需的输出位置为 \\newserver\docs\<用户名>\

要达到此效果,SourcePathTemplateDestinationPathTemplate 的设置必须如下所示:

SourcePathTemplate = *\*\*\
DestinationPathTemplate = \\newserver\*3\*2

在此情况下,DestinationPathTemplate 将为使用 SourcePathTemplate 中的星号表示的每个目录分区分配一个号码:

*1 = userfiles

*2 = <用户名>

*3 = docs

下表显示了示例源文件位置和已转换文件的结果位置,已转换文件具有上文所述的设置。

源位置 目标位置
\\userfiles\Cliff\docs\notes.doc
\\newserver\docs\Cliff\notes.docx
\\userfiles\Bob\docs\Personal\Rept1.doc
\\newserver\docs\Bob\Personal\Rept1.docx
\\userfiles\James\docs\New Folder\Schedule.doc
\\newserver\docs\James\New Folder\Schedule.docx

示例 2

在此示例中,源文件位于用户的本地计算机的 My Documents 文件夹中。UNC 路径为 \\<计算机名称>\<驱动器号>$\Documents and Settings\<用户名>\My Documents\。所需的输出位置为 \\DocServer\docs\<用户名>\

要达到此效果,请将 SourcePathTemplateDestinationPathTemplate 的设置配置为:

SourcePathTemplate = *\*\*\*\*\
DestinationPathTemplate = \\DocServer\*4\

在此情况下,DestinationPathTemplate 将为使用 SourcePathTemplate 中的星号表示的每个目录分区分配一个号码:

*1 = <计算机名称>(例如,DESKTOP3

*2 = <驱动器号>$(例如,c$

*3 = Documents and Settings

*4 = <用户名>(例如,bobsmith

*5 = My Documents

下表显示了示例源文件位置和已转换文件的结果位置,已转换文件具有上述设置。

源位置 目标位置
\\DESKTOP3\c$\Documents and Settings\bobsmith\My Documents\Plans.doc
\\DocServer\bobsmith\Plans.docx
LPTP4\d$\Documents and Settings\James\My Documents\Reports\q1.xls
\\DocServer\James\Reports\q1.xlsx

使用 VET 提取 Word 文件的版本

您可以使用 OMPM 中所包含的版本提取工具 (VET) 从 Word 文件提取文件版本,这些文件是在包含版本控制的 Office 2000、Office XP 和 Office 2003 中创建的。通过该工具,您可以使用由 OMPM 报告实用工具生成的文件列表。

从 Word 文件提取版本

  1. 在命令提示符处,导航到安装 VET 的文件夹。

  2. 键入:

    vet <OMPM 文件列表目录> <输出目录>

该命令的参数包括:

参数 描述

OMPM 文件列表目录

由 OMPM 生成的文件列表的位置。必需。

输出目录

想要复制所有版本 Word 文件的目标目录。必需。

例如,要使用包含在 c:\ompm\filelists 目录中的文件列表并将版本提取到 c:\ompm\output 目录,则需要键入:

vet c:\ompm\filelists c:\ompm\output

VET 错误消息

下表显示 VET 写入到日志和操作文件时出现的错误消息。

错误消息 描述

IssueID 9090:无法打开文档 <文档名>。

原始文档带有标记,因为其具有无法在 Word 中打开的版本。

IssueID 9096:无法获取文档 <文档名> 的版本号。

VET 无法在已命名的文档中查询文档的版本号。对象模型命令 Versions.Count 失败。

IssueID 9091:无法删除现有版本文件夹 <文件夹路径>。

特定文件存在现有版本文件夹,但 VET 无法删除该文件夹且无法为新版本文件创建新文件夹。

IssueID 9092:无法创建用于保留版本的目录 <目录名称>。

VET 无法创建用于保留为特定文档提取的版本的目录。

IssueID 9093:无法访问版本项。

VET 无法使用 Word 对象模型命令 Versions.Item(i) 访问版本。

IssueID 9094:无法从 <文件名> 打开版本 <版本号>。

VET 无法打开使用 Word 对象模型命令 Versions.Item(i).Open() 指定的版本。

IssueID 9095:无法将版本 <版本号> 从 <文件名> 保存到 <版本文件夹名称>。

VET 无法将指定的版本从文档保存到版本文件夹。