2

Alle: Ich arbeite an einer Lösung, wo eines der Projekte tatsächlich Plug-in in der Haupt-Exe ist, die die Lösung erstellt. Da dieses eine Projekt ein Plug-In ist, ist es falsch, das Plug-In von der Haupt-Exe aus zu referenzieren (diese Assembly ist nicht garantiert in einer Implementierung vorhanden, sie ist optional).Eine Build-Abhängigkeit einrichten, ohne eine Referenz zu verwenden?

hier ist also mein Problem: Wenn ich Code in meinem Plug-in-Projekt ändern, und drücken Sie dann F-5 laufen, wird Visual Studio nicht alwyas meine Plug-in bauen (seit basierend auf dem Referenzbaum, der Haupt exe scheint davon nicht abhängig zu sein).

Gibt es eine Lösung oder eine Einstellung auf Projektebene, die ich ändern könnte, damit dieses Plug-in-Projekt bei der Ausführung einbezogen wird (ohne eine Referenz hinzuzufügen)?

Ich weiß über die globale Einstellung in Tools | Optionen | Build und Run, aber ich möchte das Verhalten von VS nicht global ändern, nur um diese Lösung richtig zu erstellen (auch wenn die Einstellung mit der Lösung oder dem Projekt übereinstimmt, wenn andere Entwickler es auschecken, sollten sie einfach die Einstellung)

BTW: das sind C# -Projekte in einer VS 2005-Lösung.

Antwort

2

Klicken Sie mit der rechten Maustaste auf den Stammknoten im Projektmappen-Explorer -> Eigenschaften -> Projektabhängigkeiten. (VS 2008-Benutzer: Diese Funktion erhält ein eigenes Dialogfeld, auf das über das Kontextmenü direkt zugegriffen werden kann.)

Der Abhängigkeitsgraph wird als eine Adjazenzliste von Kontrollkästchen dargestellt Für jedes Projekt, das Sie auswählen, werden die direkten Referenzen geprüft & deaktiviert [unter der Annahme, dass Sie Projektreferenzen, nicht Baugruppenreferenzen verwenden]. Andere Kontrollkästchen sind möglicherweise deaktiviert, wenn sie eine zirkuläre Abhängigkeit erstellen würden.

Wenn ein Kontrollkästchen nicht aktiviert ist, wird durch das Aktivieren/Deaktivieren des Kontrollkästchens ein ProjectSection (ProjectDependencies) Abschnitt in Ihre Lösungsdatei geschrieben. Ihre Einstellungen werden also über die Quellcodeverwaltung an andere Entwickler weitergegeben.

Faire Warnung obwohl: Wenn Sie MSBuild verwenden (einschließlich einer beliebigen Version von Team Build), behandelt es nicht immer * .sln-Dateianpassungen auf die gleiche Weise wie in Visual Studio. * .sln ist kein systemeigener MSBuild-Dateityp, anders als *. ?? proj-Dateien. Ich selbst bin auf das Problem gestoßen described here; Ich habe auch das gegenüber Verhalten bei Gelegenheit gesehen.

+0

Das hat es! Ich wusste, dass ich diesen Dialog schon einmal gesehen hatte, ich konnte ihn einfach nicht finden (und am Ende dachte ich, ich hätte die ganze Sache geträumt). Vielen Dank. – JMarsch

0

Kann ich vorschlagen, ein dummy (leeres) Projekt zu erstellen, um die Kombination der Haupt-exe und des Plugins darzustellen und dieses Projekt von beiden abhängig zu machen, aber die EXE beim Start auszuführen?

Verwandte Themen