Freigeben oder Wiederverwenden von Visual Studio-Projekteinstellungen
Zum Erstellen einer benutzerdefinierten Gruppe von Einstellungen, die Sie für andere Personen freigeben oder in mehreren Projekten wiederverwenden können, verwenden Sie den Eigenschaften-Manager , um ein Eigenschaftenblatt (eine .props
Datei) zu erstellen, um die Einstellungen für jede Art von Projekt zu speichern, die Sie für andere Personen wiederverwenden oder freigeben möchten. Die Verwendung von Eigenschaftenblättern ist weniger fehleranfällig wie andere Methoden, „globale“ Einstellungen zu erstellen.
Wichtig
Das Problem mit *.user
Dateien
In früheren Versionen von Visual Studio wurden globale Eigenschaftenblätter verwendet, die eine .user
Dateinamenerweiterung hatten und sich im \<userprofile>\AppData\Local\Microsoft\MSBuild\v4.0\
Ordner befinden. Diese Dateien werden nicht mehr empfohlen, da sie Eigenschaften für Projektkonfigurationen pro Benutzer pro Computer festlegen. Solche "globalen" Einstellungen können Builds beeinträchtigen, insbesondere wenn Sie mehr als eine Zielplattform auf dem Buildcomputer verwenden. Wenn Sie z. B. über ein MFC-Projekt und ein Windows Telefon-Projekt verfügen, sind die .user
Eigenschaften für eines dieser Projekte ungültig. Wiederverwendbare Eigenschaftenblätter sind flexibler und stabiler.
Obwohl Dateien weiterhin .user
von Visual Studio installiert und an der Eigenschaftsvererbung teilnehmen, sind sie standardmäßig leer. Die bewährte Methode besteht darin, alle Verweise auf sie im Eigenschaften-Manager zu löschen, um sicherzustellen, dass Ihre Projekte unabhängig von den Einstellungen pro Benutzer und Computer funktionieren. Diese Vorgehensweise ist wichtig, um das richtige Verhalten in einer SCC-Umgebung (Quellcodeverwaltung) sicherzustellen.
Damit der Eigenschaften-Manager angezeigt wird, klicken Sie in der Menüleiste auf Anzeigen>Eigenschaften-Manager oder Anzeigen>Weitere Fenster>Eigenschaften-Manager. Die Vorgehensweise hängt von Ihren Einstellungen ab.
Wenn Sie einen gängigen, häufig verwendeten Satz von Eigenschaften auf mehrere Projekte anwenden möchten, können Sie den Eigenschaften-Manager verwenden, um sie in einer wiederverwendbaren Eigenschaftenblattdatei zu erfassen, die standardmäßig über eine .props
Dateinamenerweiterung verfügt. Sie können das Blatt (oder die Blätter) auf neue Projekte anwenden, sodass Sie diese Eigenschaften nicht von Grund auf neu festlegen müssen.
Unter jedem Konfigurationsknoten werden Knoten für jedes Eigenschaftenblatt angezeigt, das für diese Konfiguration gilt. Das System fügt Eigenschaftenblätter hinzu, die allgemeine Werte basierend auf optionen festlegen, die Sie beim Erstellen des Projekts im App-Assistenten auswählen. Klicken Sie mit der rechten Maustaste auf einen beliebigen Knoten, und wählen Sie „Eigenschaften“ aus, um anzuzeigen, welche Eigenschaften für diesen Knoten gelten. Alle Eigenschaftenblätter werden automatisch in das primäre Eigenschaftenblatt (ms.cpp.props
) des Projekts importiert und in der Reihenfolge ausgewertet, in der sie im Eigenschaften-Manager angezeigt werden. Sie können sie verschieben, um die Reihenfolge der Auswertung zu ändern. Eigenschaftenblätter, die später ausgewertet werden, überschreiben die Werte in zuvor ausgewerteten Blättern. Weitere Informationen zur Reihenfolge der Auswertung in der .vcxproj
Datei, den .props
Dateien .targets
, Umgebungsvariablen und der Befehlszeile finden Sie unter Project-Eigenschaftsvererbung.
Wenn Sie auf Neues Projekteigenschaftenblatt hinzufügen klicken und dann beispielsweise das Eigenschaftenblatt „MyProps.props“ auswählen, wird das Dialogfeld „Eigenschaftenseiten“ geöffnet. Beachten Sie, dass es für das MyProps-Eigenschaftenblatt gilt. Alle Änderungen, die Sie vornehmen, werden in das Blatt und nicht in die Projektdatei (VCXPROJ) geschrieben.
Eigenschaften in einem Eigenschaftenblatt werden überschrieben, wenn dieselbe Eigenschaft direkt in der .vcxproj
Datei festgelegt wird.
Sie können ein Eigenschaftenblatt so oft wie nötig importieren. Mehrere Projekte in einer Projektmappe können Einstellungen aus demselben Eigenschaftenblatt erben, und ein Projekt kann über mehrere Blätter verfügen. Eigenschaftenblätter selbst können Einstellungen von einem anderen Eigenschaftenblatt erben.
Sie können auch ein allgemeines Eigenschaftenblatt für mehrere Konfigurationen erstellen. Um ein Eigenschaftenblatt für jede Konfiguration zu erstellen, öffnen Sie das Kontextmenü für eine dieser Eigenschaften, wählen Sie "Vorhandenes Eigenschaftenblatt hinzufügen" aus, und fügen Sie dann die anderen Blätter hinzu. Wenn Sie jedoch ein allgemeines Eigenschaftenblatt verwenden, legen Sie eigenschaften für alle Konfigurationen fest, auf die das Blatt angewendet wird. Die IDE zeigt nicht an, welche Projekte oder andere Eigenschaftenblätter von einem bestimmten Eigenschaftenblatt erben.
In großen Lösungen mit vielen Projekten kann es hilfreich sein, ein gemeinsames Eigenschaftenblatt für alle Projekte in der Projektmappe zu erstellen. Erstellen Sie das Eigenschaftenblatt wie gewohnt. Verwenden Sie den Eigenschaften-Manager , um dieses Eigenschaftenblatt jedem Projekt in der Projektmappe hinzuzufügen. Bei Bedarf auf Projektebene können Sie ein weiteres Eigenschaftenblatt hinzufügen, um projektspezifische Werte festzulegen.
Wichtig
Eine .props
Datei ist standardmäßig nicht an der Quellcodeverwaltung beteiligt, da sie nicht als Projektelement erstellt wird. Wenn Sie die Datei in die Quellcodeverwaltung aufnehmen möchten, können Sie sie manuell als Projektmappenelement hinzufügen.
So erstellen Sie ein Eigenschaftenblatt
Klicken Sie in der Menüleiste auf Anzeigen>Eigenschaften-Manager oder Anzeigen>Weitere Fenster>Eigenschaften-Manager. Der Eigenschaften-Manager wird geöffnet.
Um den Umfang des Eigenschaftenblatts zu definieren, wählen Sie das Element aus, auf das es angewendet wird. Dieses Element kann eine bestimmte Konfiguration oder ein anderes Eigenschaftenblatt sein. Öffnen Sie das Kontextmenü für dieses Element, und wählen Sie Neues Projekteigenschaftenblatt hinzufügen aus. Geben Sie einen Namen und den Speicherort an.
Öffnen Sie im Eigenschaften-Managerdas neue Eigenschaftenblatt, und legen Sie dann die Eigenschaften fest, die Sie einschließen möchten.