2015-11-09 18 views
0

我想添加一個目錄及其文件到Visual Studio保持根目錄。我在我的.csproj文件中使用了下面的一段XML,但是它將所有文件添加到解決方案資源管理器,但排除了根目錄。該文件是可變的,我不想硬編碼他們手動添加。這就是我尋找自動化解決方案的原因。添加一個目錄到clickonce

我該如何解決這個問題?

<ItemGroup> 
    <Content Include="bin\x86\release\myFolder\**\*"> 
     <Visible>true</Visible> 
     <Link>%(RecursiveDir)%(Filename)%(Extension)</Link> 
    </Content> 

我想在ClickOnce發佈中包含此目錄(而不僅僅是它的文件)。

回答

1

我想不出任何自動的方式來創建文件夾,並使solutin資源管理器意識到這個文件。所以我創建了文件夾,右鍵單擊項目 - >添加文件夾。卸載的項目和編輯我已經創建的解決方案資源管理器的目錄添加到這一塊的XML:

現在
<ItemGroup> 
    <Content Include="foo\*.*"> 
     <CopyToOutputDirectory>Always</CopyToOutputDirectory> 
     <Visible>True</Visible> 
    </Content> 
    </ItemGroup> 

解決方案資源管理器是意識到文件等做的ClickOnce。這些文件正確地在app.publish文件夾中

注意:在此項目中,foo文件來自另一個文件夾(外部C++的二進制輸出文件夾)。他們在建立後的時間被抄錄。文件夾名稱是硬編碼的(我需要在VS解決方案資源管理器上,在.csproj文件上以及在構建後的xcopy命令行中手動修改它們),因爲我沒有找到任何其他方式來執行那。

+1

似乎是一種簡單的方法來完成你所需要的。 –

0
<Target Name="AddGeneratedFiles" AfterTargets="SOMETASK"> 
    <CreateItem Include="*.cpp"> 
     <Output TaskParameter="Include" ItemName="ClCompile" /> 
    </CreateItem> 
    </Target> 
+0

我得到同樣的行爲。這個必須在結束之前放好嗎? – Jack

相關問題