2017-09-27 223 views
1

我有一個UWP應用程序,其中包含一個webview,顯示從一個單獨的源編譯的文件。單獨的源代碼將所有文件轉儲到一個文件夾中,並且我只想將該文件夾的全部內容自動包含在我的UWP構建中。如何將文件夾中的所有文件打包到VS2015中的UWP應用程序包中?

我還沒有找到一個簡單的自動方式來做到這一點。

我可以用這種方法狠狠地添加它們:Copying assets into UWP application package但是這並不能真正幫助我,因爲生成文件夾中文件的過程可以添加,刪除或更改全部文件的名稱。每次它這樣做(這可以是一天多次),我必須進入並重新添加或刪除已經出現/消失的文件。

目前我最好的想法是編寫一個腳本來解析文件夾,列出文件,然後從該列表中自動生成一個vcxproj文件。但是,這看起來很詭異,並且會有一些缺點(例如,我對VS2015中的項目文件所做的任何更改都會被分類,除非我也更改了腳本)

是否有辦法告訴VS2015將所有將命名文件夾中的文件(和子文件夾)放入UWP應用程序中,沒有問題?

+0

文件夾只能在本地文件夾中找到嗎? –

回答

1

可以通過Property Sheet/.props文件添加文件夾和所有子文件夾和文件。

本示例包含UWP appx包中「Assets \ Website」下的'TestItem'下的所有文件和文件夾結構。請注意,TestItem本身沒有條目,因爲它是根。

<?xml version="1.0" encoding="utf-8"?> 
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <ImportGroup Label="PropertySheets" /> 

    <ItemGroup> 
    <_CustomResource Include="..\..\TestItem\**\*"> 
     <Link>Assets\Website\%(RecursiveDir)%(FileName)%(Extension)</Link> 
     <DeploymentContent>true</DeploymentContent> 
    </_CustomResource> 
    </ItemGroup> 

    <Target Name="_CollectCustomResources" BeforeTargets="AssignTargetPaths"> 
    <Message Text="Adding resource: %(_CustomResource.Identity) -&gt; %(_CustomResource.Link)" /> 
    <ItemGroup> 
     <None Include="@(_CustomResource)" /> 
    </ItemGroup> 
    </Target> 
</Project> 

Property Manager可用於將新的Property Sheets添加到項目中。
請注意,我沒有在IDE中找到添加,編輯甚至查看上述屬性的任何方式,所以我手動創建了.props文件。

相關問題