Pergunta

Eu estou usando o MS Office PIA 2003 para criar um documento MS Word a partir de c #.

ApplicationClass officeApplication = new ApplicationClass();

Existe alguma maneira para especificar que eu não quero qualquer escritório add-ins para ser carregado utilizando este método?

EDIT:

Eu sei que um pode fazer isso via linha de comando, então eu tenho certeza que deve haver uma maneira de fazê-lo a partir do código:

"C:\Program Files\Microsoft Office\Office11\Winword.exe" /a  
Foi útil?

Solução

Este código descarregar o AddIns

officeApplication.AddIns.Unload(false);

Editado:
Quando você precisa misturar o início do processo e possibilidade de usar a "aplicação" interface do Office, é necessário o comando Marshal.GetActiveObject.
Exemplo:

        //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");

Outras dicas

Tente este

System.Diagnostics.Process.Start(
  @"C:\Program Files\Microsoft Office\Office11\Winword.exe", 
  @"/a");
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top