Instantiating Visual Studio 2008
-
19-09-2019 - |
Domanda
Sto cercando di ottenere un elenco di tutti i progetti all'interno di una soluzione VS2008 specificato. (Questa è una console applicazione stand-alone, non è un Visual Studio add-in)
Il mio codice funziona con soluzioni VS2005, ma ho tutti i tipi di errori COM brutti cercando di utilizzare l'oggetto VS2008.
Quello che voglio dire è: Questo:
Type _visualStudioType = Type.GetTypeFromProgID("VisualStudio.DTE.8.0");
DTE _dte = Activator.CreateInstance(_visualStudioType) as DTE;
funziona e questo:
Type _visualStudioType = Type.GetTypeFromProgID("VisualStudio.DTE.9.0");
DTE _dte = Activator.CreateInstance(_visualStudioType) as DTE;
non (attualmente getta errore COM 8001010a)
Ho entrambe le classi rilevanti registrati nel Registro di sistema, e tutti i gruppi appropriati viene fatto riferimento.
Modifica: Vengo con l'analisi di base del file di .sln, anche se devo fare un po 'di riscrittura, come manipolazione di testo è destinato a lavorare senza tutta la roba brutta interoperabilità. Tuttavia, non riesco a trovare una descrizione del formato .sln, tutte le risorse?
Soluzione
Si consiglia di guardare a questo: libreria per l'analisi visivi file Studio soluzione? Se l'analisi del .sln rivolge direttamente fuori per essere l'unica opzione.
Per quanto riguarda i problemi presenti, alcune altre persone hanno avuto il problema . Il KB246018 dice controllare il vostro antivirus come la principale causa (esempio è parola, ma lo stesso vale per VS). Prova a escludere la directory VS tutto.
Altri suggerimenti
Hai trovato un errore RPC: "server è occupato". Che potrebbe essere perché Visual Studio è in realtà occupato, il debug del programma modalità console. Brevi dal debug con Console.WriteLine) dichiarazioni (, provare con un altro debugger. L'SDK di Windows ha i debugger clrdbg.exe e mdbg.exe. L'SDK .NET 2.0 ha avuto un IIRC GUI debugger.