Par programmation de trouver le VS2017 répertoire d'installation
Avec les versions précédentes de VS vous pourriez interroger le registre pour déterminer le répertoire d'installation pour VS:
HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\14.0
Cependant, cela ne semble pas fonctionner avec la VS2017 RC. Nous avons des scripts qui permettent de détecter les dernières installé VS et puis faire "la bonne chose", et jusqu'à présent je vais avoir des problèmes de brancher VS2017 dans ces systèmes.
Personne ne sait comment de programmation pour déterminer l'emplacement d'installation pour VS2017?
Les Applications sont pas censés utiliser le
Wow
nœuds. Ils n'existent que dans les systèmes x64 pour permettre x86 applications de fonctionner. Avez-vous vérifié la HKLM\SOFTWARE\Microsoft\VisualStudio\15.0\Setup
nœud? De toute façon, la mise en page du disque a changé un beaucoup. Presque tout peut être trouvé dans " %PROGRAM FILES%\Microsoft Visual Studio 15.0` maintenantOriginalL'auteur Brad | 2016-12-12
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
vswhere
outil pour obtenir VS2017 emplacement.Exemple:
Vous pouvez en lire plus à ce sujet ici: https://blogs.msdn.microsoft.com/heaths/2017/02/25/vswhere-available/
Cela ne l'a pas assez de travail pour moi - voir les changements que je voulais faire dans ma réponse.
Cela fonctionne si
vswhere
est sur le chemin d'accès par défaut, ce qui ne l'est pas. Voir @Srekel la réponse ci-dessous...vswhere est un autonome exe sorte que vous pouvez toujours copier à l'endroit où vous le voulez
Theres un wiki pour vswhere sur GH maintenant: github.com/Microsoft/vswhere/wiki
OriginalL'auteur KindDragon
Visual Studio 2017 prend pas en charge de registre, à côté de installations de toutes les Références (de l'Entreprise, Professionnel et Communautaire).
MSI installlers pouvez interroger via des Api décrite ici:
https://blogs.msdn.microsoft.com/heaths/2016/09/15/changes-to-visual-studio-15-setup/
Exemples sont ici:
OriginalL'auteur sean e
KindDragon la solution n'a pas assez de travail pour moi en raison de lot "expansion retardée" "fonctionnalité". (WAT)
Voici mon code, compatible avec VS 2017 15.2 (pour le vswhere.exe de l'installation)
Note en particulier l'utilisation de SETLOCAL EnableDelayedExpansion et !InstallDir!
Je ne sais pas l'homme. J'ai collé dans mon fichier de commandes et ça ne fonctionne pas, apparemment parce qu'il n'a pas d'élargir le InstallDir variable lors de l'exécution. Ensuite, j'ai utilisé EnabledDelayedExpansion et il a travaillé pour moi. J'ai horreur des fichiers par lots et n'était pas trop envie de comprendre ce qui s'est passé et je suis heureux d'avoir trouvé une solution 😀 Posté dans l'espoir que cela pourrait aider quelqu'un d'autre.
Cet extrait fonctionne réellement, car il n'a pas la prétention
vswhere
est sur le chemin. Pour ceux qui s'interrogent sur l'expansion retardée, il n'est de permettre l'expansion de variables à l'aide de la!somevar!
de la syntaxe à l'intérieur de la boucle et des blocs conditionnels. Actuellement accepté de répondre par @KindDragon ne pas utiliser expansion retardée alors je suppose @Srekel est en se référant à sa propre construction ne fonctionne pas sans elle.IIRC, le problème se pose lorsque vous essayez d'utiliser effectivement le InstallDir variable. Sans retard expansions, en l'utilisant avec la traditionnelle % de recherche ne fonctionne pas parce qu'il a la valeur qu'elle a au début du fichier de commandes - c'est à dire rien.
OriginalL'auteur Srekel
Bien, vswhere.exe n'a pas vraiment d'approvisionnement en plus de l'édition de Visual Studio chemin d'installation. Voici mon .le fichier de profil de Interix extrait de 2008 de faire la même chose avec une mise à jour mineure (script shell):
C'est l'énumération des installations Visual Studio favorisant le dernier dans la clé de registre
Travaille encore pour Visual Studio 2017. Il serait facile de traduire cmd syntaxe. Pour interroger la base de registre est plus simple et ne nécessite pas de vswhere.exe dans votre chemin d'accès, ainsi favorable de l'OMI.
Maintenant trouver le cours de Visual C++ instance et les Kits de développement logiciel est une autre tâche tout à fait. 😀
Sortie commune dans le cas où vous vous demandez:
OriginalL'auteur BeErikk
J'ai eu un diable de temps à essayer de modifier Srekel la réponse de rechercher seulement les VS2017. Remarque: Si vous mettez le "pour" déclaration ci-dessous à l'intérieur d'un bloc "if", il détruira les caractères d'échappement et ne fonctionne pas.
OriginalL'auteur mdrissel
Mai je recommande mon colis get-vs2017-chemin il n'utilise que les outils intégrés dans Windows (et même si c'est construit comme un
NPM
paquet, il n'a pas de dépendances, et le dossier outils d'œuvres autonomes)OriginalL'auteur Refael Ackermann
Il est possible de requête d'installation de Visual studio chemin d'accès du registre, voir la réponse suivante:
https://stackoverflow.com/a/48915860/2338477
Vous pouvez utiliser le lot de lui-même et obtenir à la sortie de retour à la demande ou encore plus simple - utiliser les fonctions de registre à la requête de la valeur de clé.
Limites de cette approche sont décrites dans la réponse.
OriginalL'auteur TarmoPikaro
Vous pouvez utiliser cette PowerShell extrait de code pour trouver le VS2017 répertoire d'installation:
(-not (Test-Path $vssetup_path -pathType container)) -eq 0
de sorte que le module n'a pas l'installerPourquoi voter contre??
OriginalL'auteur KindDragon
- Je utiliser powershell comme KindDragon suggéré
Je ne suis pas sûr au sujet de la nouvelle VS2017 version, mais peut-être changer 14.0 15.0?
Non, VS2017 n'utilisez pas de registre
OriginalL'auteur DOMZE