Y a-t-il un moyen d'obtenir le pointeur HWND sur la fenêtre supérieure de Visual Studio 2010 à partir d'une extension VSIX? (Je voudrais changer le titre de la fenêtre). P>
3 Réponses :
Je suppose que vous voulez le faire de manière programmative en C #?
Vous devez définir cette page p / invoquée à l'intérieur de votre classe: p> alors ont alors Quelqu'un code qui ressemble à ce qui suit: p> doc sur le processus: http://msdn.microsoft.com/en-us/library/system.diagnostics.process.aspx p> doc sur p / Invoquer: http://msdn.microsoft.com/ EN-US / Bibliothèque / AA288468% 28VS.71% 29.aspx P> Essayer ce code sur mon local, il semble définir le titre de la fenêtre, mais Visual Studio écrase-le sous plusieurs conditions: gagne la mise au point, entre / laisse le mode de débogage ... Cela pourrait être gênant. p> Remarque: vous pouvez obtenir le titre de la fenêtre directement à partir de l'objet de processus, mais vous ne pouvez pas la définir. P> < / p>
Merci pour l'information. Cela m'a conduit à une solution plus simple. Processus.getCurrentCrocess (). Mainwindowhandle
Vs continuera à écrire sur le titre. Il est discuté ici: Stackoverflow.com/Questtions/577188/...
car il y a de bonnes chances que votre extension VSIX fonctionnera en cours d'exécution avec Visual Studio, vous devez essayer ceci:
System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle
Vous pouvez utiliser le EnvdTE API à Obtenez le HWND de la fenêtre principale: dans Visual Studio 2010/2012, la fenêtre principale et une partie des contrôles utilisateur implémentées à l'aide de WPF. Vous pouvez immédiatement obtenir la fenêtre WPF de la fenêtre principale et travailler avec elle. J'ai écrit la méthode d'extension suivante pour cela: p>