Ich schreibe ein Out-of-Process-Konsolenprogramm, das Visual Studio (2012) automatisiert. Ich muss den Inhalt des Ausgabebereiches entweder sofort lesen oder vorzugsweise zu einer Benachrichtigung für jede Zeile im Ausgabefenster hinzufügen.So erhalten Sie den Visual Studio-Ausgabefensterinhalt über EnvDTE (Non-Package)
Ich habe einige Beispiele gesehen, die nur beim Schreiben eines Pakets zutreffen, aber sie werden nicht angewendet, wenn Sie dies für ein veraltetes Programm tun.
Das große Problem im Moment ist, dass ich den Ausgabefenster-Service nicht über GetService eines Service Providers bekommen kann. es gibt immer null zurück. Ich bin mir nicht sicher, ob ich es bekommen kann, wenn ich kein Paket schreibe.
Sind Sie einen Verweis auf eine aktuell ausgeführte Instanz zu arbeiten bekommen? Dies kann sehr schwierig sein. http://StackOverflow.com/Questions/14205933/How-Do--Get-the-Dte-for-Running-visual-Studio-Instance/14205934#14205934 – Will
Ich bin eigentlich derjenige, der es erstellt mit: Var vsType = Type.GetTypeFromProgID ("VisualStudio.DTE.11.0"); _dte = Activator.CreateInstance (vsType) als DTE2; – Tal