Visual C++를 사용하여 자동화를 통해 Office 응용 프로그램을 제어할 수 있는 방법에는 여러 가지가 있습니다. 즉, 각 엑셀 . EXE와 관련 라이브러리는 특정 COM 인터페이스(특정 GUID가 있음)를 통해 노출됩니다. 따라서 Excel 2003의 COM 인터페이스는 Excel 2010용 COM 인터페이스와 다를 수 있습니다. 로드 라이브러리는 DLL을 로드하는 데 사용되며 COM 개체가 DLL에서 lve인 경우에도 COM SUbsystem API(CoCreateInatance, QueryInterface 등)의 사용을 호출하지만 다음 설명서 중 일부는 VBA 개발자를 위해 명시적으로 작성되었습니다. 사용된 예제는 종종 외부 클라이언트에도 적용됩니다. 앞서 설명한 것처럼 대안이 있을 때 웹 서버에서 Office 문서를 만들거나 조작하기 위한 자동화에 대한 대안을 고려해야 합니다. 자동화를 포함하지 않는 서버 솔루션은 확장성이 뛰어나고 견고하며 문제가 줄어듭니다. 다양한 유형의 Office 문서에 대해 다양한 솔루션을 사용할 수 있습니다. 예를 들어 Excel 통합 문서로 작업하는 동안 ADO 또는 XML/HTML을 사용하거나 Word 문서로 작업하는 동안 텍스트 기반 RTF 형식이 제공하는 이점을 활용할 수 있습니다. Office 2013 및 VS 2013에서 작동하지 않는 경우 c ++ 프로그래밍을 사용하여 Excel 파일의 데이터를 읽는 다른 쉬운 방법이 있습니까? 이벤트를 발생시킬 수 있는 자동화 개체는 연결 지점 인터페이스를 구현합니다.

자동화 컨트롤러는 „싱크”를 만들어 자동화 개체의 연결 지점과 „연결”하여 이벤트 알림을 받을 수 있습니다. MFC의 IDispatch::Invoke의 기본 구현은 명명된 인수를 지원하지 않습니다. 따라서 일부 자동화 서버마이크로 소프트 엑셀, 예를 들어당신은 싱크에 IDispatch의 자신의 구현을 제공해야합니다. 예: HOWTO: VC++(Q183599)를 사용 하 여 Microsoft Word97 응용 프로그램 이벤트를 catch 하 고 HOWTO: VC++(Q186427)를 사용 하 여 Microsoft Excel 응용 프로그램 이벤트를 잡으십시오. 안녕하세요 앤디, 내 문제는 여기에 설명되어 있습니다 : https://stackoverflow.com/questions/53515730/delete-excel-sheet-randomly-fails 한 마지막 일 – 여전히 백그라운드에서 실행되는 기존 Excel 프로세스는 실행하기 전에 종료해야한다는 점에 유의하시기 바랍니다 그렇지 않으면 오류가 발생할 수 있습니다. 예를 들어 이 프로그램을 디버깅한 다음 pXL->Quit()가 호출되기 전에 종료하기로 결정할 수 있습니다. Office 응용 프로그램은 각 응용 프로그램에 포함된 VBA 편집기로 만들 수 있는 VBA 스타일 추가 기능을 지원합니다. 예를 들어 VBA 편집기를 사용하여 Excel 추가 기능(xla), 워드 추가 기능(점) 또는 PowerPoint 추가 기능(ppa)을 만들 수 있습니다. VBA 추가 기능을 개발하는 것이 더 쉽지만 컴파일되지 않으며 일부 솔루션에 대해 최적이 아닌 속도로 실행될 수 있습니다. 참고: 정보: Office의 서버 측 자동화(Q257757)(MS Office의 서버 측 자동화가 권장되지 않거나 지원되지 않음)에 대한 고려 사항) 솔루션을 빌드하고 실행합니다.