추가 인없이 .NET에서 MS Office Word를 시작하려면 어떻게해야합니까?

StackOverflow https://stackoverflow.com/questions/608152

  •  03-07-2019
  •  | 
  •  

문제

C#에서 MS Word 문서를 작성하기 위해 MS Office 2003 PIA를 사용하고 있습니다.

ApplicationClass officeApplication = new ApplicationClass();

이 방법을 사용하여 사무실 추가 인을로드하고 싶지 않다는 것을 지정할 수있는 방법이 있습니까?

편집하다:

명령 줄을 통해이 작업을 수행 할 수 있다는 것을 알고 있으므로 코드에서 수행 할 수있는 방법이 있다고 확신합니다.

"C:\Program Files\Microsoft Office\Office11\Winword.exe" /a  
도움이 되었습니까?

해결책

이 코드는 AddIn을 언로드합니다

officeApplication.AddIns.Unload(false);

편집 :

프로세스 시작과 사무실 "애플리케이션"인터페이스를 사용할 수있는 가능성을 혼합 해야하는 경우 Marshal.getActiveObject 명령.
예시 :

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

다른 팁

이 시도

System.Diagnostics.Process.Start(
  @"C:\Program Files\Microsoft Office\Office11\Winword.exe", 
  @"/a");
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top