Kann jemand eine Kompilierung eines Bibliotheksprojekts auf Visual Studio umstellen, damit ich für kompaktes Framework und vollständiges .Net-Framework kompilieren kann?Switch-Kompilierung zwischen kompakten und vollständigen .net-Framework?
Antwort
Sie können zwei Projektdateien in den gemeinsamen Quellen verwenden.
Sie können also eine Lösungsdatei und zwei Projektdateien im selben Verzeichnis haben.
Ich bin ziemlich sicher, dass es in Ihren Projekteigenschaften erscheint, wenn Sie das kompakte Framework installiert haben (genau wie die Wahl zwischen den Versionen 2.0-3.5).
Wenn Sie eine .NET CF-Bibliothek erstellen, wird sie in den meisten Fällen auch auf dem Desktop .NET ausgeführt.
Sie können diese Art der Entwicklung sogar ein wenig erleichtern, indem Sie die beschriebenen Schritte here befolgen. Der Link wird Ihnen helfen, Visual Studio so einzurichten, dass Sie für .NET CF kompilieren, aber auf Ihrem Desktop bereitstellen können.
Wir haben uns angeschaut, wie man ein Projekt für vollständige und kompakte Framework-Vesrions kompiliert, aber am Ende war es chaotisch (viele Hacking-Projektdateien) und wir trafen routinemäßig Sceneraios, wo wir bestimmte Dateien oder Referenzen in einem aufnehmen wollten oder die anderen Ziele (z. B. Smart Device Framework in der kompakten Framework-Version).
Wir hatten lösungstechnische Probleme bei der Testanalyse von MSTest-Komponententests. Daher haben wir jetzt zwei separate Lösungen. Jede Lösung hat einen Baum von meist denselben logischen Projekten - eines für kompaktes Framework und das andere für vollständiges Framework. Es ist ein wenig Wartung, aber es hat einigermaßen gut funktioniert.
Ein zusätzliches Element wir manuell entweder den vollständigen oder Compact Framework Projekt hinzuzufügen, benötigt, um die Standardzwischen \ Ausgabepfad wurde eine Änderung der Projektergebnisse von Schritt aufeinander zu vermeiden:
die CSPROJ<Project ... >
<PropertyGroup>
<BaseIntermediateOutputPath>objCE\</BaseIntermediateOutputPath>
...
öffnen Datei und fügen Sie die Zeile zum ersten Element <PropertyGroup>
hinzu.
Mehr Informationen über die Parameter finden Sie hier: http://msdn.microsoft.com/en-us/library/bb629394.aspx
Eine Sache zu beachten ist, dass Sie eine Sicherheitswarnung erhalten, wenn Sie das Projekt öffnen die besagt, dass es angepasst wurde. Sie können auswählen, dass Sie es normal laden und die Option "Immer nach mir fragen" deaktivieren, um sie nie wieder zu sehen.
Ich denke, das ist ein bisschen zu kompliziert. Wie Manushin schon erwähnte, mache einfach eine Lösung mit mehreren Projekten, die die gleichen Quelldateien verwenden. – Oliver
Oliver, bitte beziehen Sie sich auf meine MSTest mit Code Analyse Kommentar. Eine Lösung wird nicht funktionieren, wenn dies das Szenario ist. Die Problemumgehung BaseIntermediateOutputPath ist erforderlich, wenn sich sowohl die vollständigen als auch die kompakten Framework-Projekte im selben Verzeichnis befinden. Wir verwenden die Konfiguration, sodass wir Quelldateien aus beiden Projekten einbeziehen, ohne auf Links oder Unterschiede auf Ordnerebene zurückgreifen zu müssen. –
Großartig! Danke für deine Antwort! – elranu