Wie kann ich überprüfen/erkennen, welche Visual Studio-Version unter meinem VSPackage ausgeführt wird?Erkennen der Visual Studio-Version in einem VSPackage
Ich kann nicht aus der Registrierung erhalten, weil der Computer mehrere Versionen installiert haben könnte, so dass ich denke, es ist eine API, die es zu erhalten vermag.
Jeder weiß, wie man es aus einem verwalteten Visual Studio-Paket mit C# bekommt?
Diese Lösung ist im Vergleich zu DTE.Version sinnvoll, da früher oder später DTE von VS API veraltet wird (genauso wie die VS-Addin-Technologie veraltet ist). Der vorgeschlagene Code kann verbessert werden, indem fvi.FileMajorPart und fvi.FileMinorPart verwendet werden, das zwei Ganzzahlen zurückgibt. Dadurch wird der String-Parsing-Teil im vorgeschlagenen Code vermieden. –
+1, da dieser Code die Vollversion (z. B. 11.0.61030.00) abruft, die zum Ableiten der Aktualisierungsstufe von VS verwendet werden kann. DTE.Version kehrt nur z. "11.0" –
Gibt es einen Grund, msenv.dll gegenüber devenv.exe vorzuziehen? Nur neugierig. Außerdem: frage mich, ob wirklich eine Verriegelung erforderlich ist? –