如何:在部署报告中查找部署输出文件的路径
更新:2007 年 11 月
在 XML 部署报告中,可以查看在部署输出位置创建的目录结构的相关信息。创建此结构是为了在生成部署报告时可以将部署所需的应用程序文件复制到该位置。然后,您可以使用此信息检索每个应用程序文件的路径。有关更多信息,请参见部署报告中的应用程序信息和部署输出文件的位置和目录结构。
检索应用程序目录或文件的完整路径
打开部署报告的 XML 版本。
找到 <Applications> 元素,再找到应用程序的 <Application> 元素,然后找到“Directory”<Resource> 元素。
在“Directory”元素内,查找“Path”<Setting> 元素,然后查找“Assigned”<Facet> 元素。
在“Directory”元素下,一组 <Resource> 元素描述在磁盘上创建的目录以及复制到应用程序的这些目录的文件。
若要获得应用程序目录的路径,请从“Assigned”元素中检索值。
提示:
“Assigned”元素的值由部署报告的 Destination Path 属性指定。若要查看此属性,请右击部署关系图面并选择“属性”。您也可以单击部署关系图面并按 F4。
在“Directory”元素内,找到每个子目录或文件的 <Resource> 元素,然后找到“Current”<Facet> 元素。
提示:
每个 <Resource> 元素都有一个“Extends”属性。对于目录,该属性将元素标识为“Microsoft_FileSystem:Directory”;对于文件,该属性将元素标识为“Microsoft_FileSystem:File”。文件的 <Resource> 元素也忽略文件名中的任何空白或句点。
若要获得从应用程序目录到子目录或文件的路径,请从“Current”元素中检索值。
通过将“Directory”元素中的路径与子目录或文件 <Resource> 元素中的路径组合在一起,可生成指向该子目录或文件的完整路径。
![]() |
---|
为生成有效路径,您可能需要在适当的位置添加反斜杠标记 (\)。 |
示例
下面的示例包含一个 Windows 应用程序的“Directory”元素。此元素包含 <Resource> 元素,这些元素描述在输出位置创建的目录以及复制到该位置的文件。
<Resource Name="Directory" Definition="MyWinAppDefinition:MyWinAppDefinition.Directory" Extends="Microsoft_FileSystem:Directory" InstanceId="5badb907-1e78-4da7-8da1-2857288489e0">
...
<Resource Name="MyProject" Definition="MyWinAppDefinition:MyWinAppDefinition.Directory.DirectoryResource" Extends="Microsoft_FileSystem:Directory" InstanceId="a7e6a8d8-a961-4cb3-8ed2-31ac0824581a">
<Resource Name="WebReferences" Definition="MyWinAppDefinition:MyWinAppDefinition.Directory.DirectoryResource1" Extends="Microsoft_FileSystem:Directory" InstanceId="52204baa-4dd7-4084-8ba7-e4fb6f13694d">
<Resource Name="MyWinAppDefinitionvbproj" Definition="MyWinAppDefinition:MyWinAppDefinition.Directory.FileResource4" Extends="Microsoft_FileSystem:File" InstanceId="d0816ea3-d101-4010-9845-203d97af1d38">
...
<Resource Name="Form1Designervb" Definition="MyWinAppDefinition:MyWinAppDefinition.Directory.FileResource3" Extends="Microsoft_FileSystem:File" InstanceId="b0d70dc9-4959-424e-b133-601c00a8451c">
...
<Resource Name="appconfig" Definition="MyWinAppDefinition:MyWinAppDefinition.Directory.FileResource" Extends="Microsoft_FileSystem:File" InstanceId="0c34fdf7-84e0-42a6-baf3-d726d3fd5660">
...
<Resource Name="Form1vb" Definition="MyWinAppDefinition:MyWinAppDefinition.Directory.FileResource2" Extends="Microsoft_FileSystem:File" InstanceId="75133b44-295c-40f6-8033-20817d8c8b30">
...
<Resource Name="MyWinAppDefinitionsdm" Definition="MyWinAppDefinition:MyWinAppDefinition.Directory.FileResource1" Extends="Microsoft_FileSystem:File" InstanceId="aca72d6e-6f4b-47f9-b760-73de03bee50c">
...
</Resource>
下面的示例包含一个 Windows 应用程序的“Directory”元素。此元素描述指定输出位置的项目目录。此示例还包含一个“Path”<Setting> 元素。此元素包含 <Facet> 元素,这些元素描述该项目目录的路径信息。此示例还包含 App.config 文件的一个 <Resource> 元素、该文件的“Path”<Setting> 元素以及描述该文件的路径信息的 <Facet> 元素。
在此示例中,此 Windows 项目的 App.config 文件的完整路径从两个位置获得:
“Directory”元素下的“Assigned”<Facet> 元素的值:“C:\My Documents\My Distributed System\Deployment”。
App.config 文件 <Resource> 元素的“Current”<Facet> 元素:“MyWinAppDefinition\app.config”。
因此,将这两个路径用一个反斜杠标记 (\) 组合在一起便可生成 App.config 文件的完整路径:“C:\My Documents\My Distributed System\Deployment\MyWinAppDefinition\app.config”。
![]() |
---|
App.config 文件在部署时应重命名为 MyApplicationName.exe.config。有关更多信息,请参见部署输出文件的位置和目录结构。 |
<Resource Name="Directory" Definition="MyWinAppDefinition:MyWinAppDefinition.Directory" Extends="Microsoft_FileSystem:Directory" InstanceId="5badb907-1e78-4da7-8da1-2857288489e0">
<Setting Name="Path" Definition="Microsoft_FileSystem:Path">
<Facet Name="Assigned" Definition="Microsoft_FileSystem:Path" State="Set"><Value>C:\My Documents\My Distributed System\Deployment</Value></Facet>
<Facet Name="Parent" Definition="Microsoft_FileSystem:Path" State="Set" Null="true" />
<Facet Name="Current" Definition="Microsoft_FileSystem:Path" State="Set">
<Value>MyWinAppDefinition</Value>
</Facet>
</Setting>
...
<Resource Name="appconfig" Definition="MyWinAppDefinition:MyWinAppDefinition.Directory.FileResource" Extends="Microsoft_FileSystem:File" InstanceId="ad03d65a-9075-4822-b3f9-2fad1fba0a4f">
...
<Setting Name="Path" Definition="Microsoft_FileSystem:Path">
<Facet Name="Assigned" Definition="Microsoft_FileSystem:Path" State="Set" Null="true" />
<Facet Name="Parent" Definition="Microsoft_FileSystem:Path" State="Set">
<Value>MyWinAppDefinition</Value>
</Facet>
<Facet Name="Current" Definition="Microsoft_FileSystem:Path" State="Set"><Value>MyWinAppDefinition\app.config</Value></Facet>
</Setting>
</Resource>
...
</Resource>