Domanda

Sto utilizzando MS Office 2003 PIA per creare un documento MS Word da c #.

ApplicationClass officeApplication = new ApplicationClass();

Esiste un modo per specificare che non voglio caricare alcun componente aggiuntivo per ufficio utilizzando questo metodo?

EDIT:

So che uno può farlo tramite la riga di comando, quindi sono abbastanza sicuro che ci debba essere un modo per farlo dal codice:

"C:\Program Files\Microsoft Office\Office11\Winword.exe" /a  
È stato utile?

Soluzione

Questo codice scarica gli AddIns

officeApplication.AddIns.Unload(false);

A cura:
Quando è necessario mescolare l'avvio del processo e la possibilità di utilizzare l'applicazione "quotazione" dell'ufficio interfaccia, è necessario il comando Marshal.GetActiveObject .
Esempio:

        //startup without plugins
        System.Diagnostics.Process.Start(
            @"Winword.exe",
            @"/a");
        //give a time for startup
        Thread.Sleep(2000);
        //attach to office
        Application officeApplication = (Application)Marshal.GetActiveObject("Word.Application");

Altri suggerimenti

Prova questo

System.Diagnostics.Process.Start(
  @"C:\Program Files\Microsoft Office\Office11\Winword.exe", 
  @"/a");
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top