Wie nutze ich meine .Ziele-Datei in Visual Studio mit custom-build-Aktionen?
Ich bin ein Anfänger mit MSBuild. Bisher habe ich in der Lage, erstellen Sie eine benutzerdefinierte task namens 'MakeTextFile', das erstellt eine text-Datei in C:\ auf der Grundlage der Inhalte-Eigenschaft, die Sie übergeben. Diese arbeiten, ausgeführt von einer Befehlszeile.
Habe ich auch diesen in meine .targets-Datei (unter dem Projekt-tag):
<ItemGroup>
<AvailableItemName Include="CreateTextFileAction" />
</ItemGroup>
Wenn ich das Import-tag auf meinem client-Anwendungen .csproj jetzt kann ich set-items bauen, die Aktionen zu 'CreateTextFileAction', aber die Aktion nie-Trigger (kein text-Datei auf C:\ erstellt)
Wie bekomme ich alle Datei-Pfade der Elemente, die markiert wurden, mit meinem build action 'CreateTextFileAction" und pass auf meine benutzerdefinierte Aufgabe?
Für die Referenz, meiner .Ziele Datei:
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<AvailableItemName Include="CreateTextFileAction" />
</ItemGroup>
<UsingTask AssemblyFile="CustomMSBuildTask.dll" TaskName="CustomMSBuildTask.MakeTextFile" />
<Target Name="MyTarget">
<MakeTextFile Contents="TODO HOW DO I GRAB MARKED FILES?" />
</Target>
</Project>
InformationsquelleAutor James | 2012-06-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einen csproj-Datei hat eine definierte Ziele. Die drei wichtigsten Einstiegspunkte sind Bauen, umbauen und Reinigen. Diese Ziele haben jeweils eine Reihe von Abhängigkeiten. Wenn Sie schreiben Ihre eigenen Ziele zu sein, Teil der standard-csproj bauen, müssen Sie finden einen geeigneten einspritzzeitpunkt innerhalb dieser Abhängigkeiten.
Zur einfachen Verwendung gibt es zwei standard-Ziele für Sie zu überschreiben genannt BeforeBuild und AfterBuild. Wenn Sie definieren, diese in die csproj-Datei (nach dem importieren der csharp-targets-Datei) und rufen Sie Ihre benutzerdefinierten Aufgabe gibt, dann sollte es funktionieren (oder zumindest bewegen sich weiter).
InformationsquelleAutor daughey