회사의 내부 비즈니스 시스템을위한 플러그인 아키텍처를 실험하고 있습니다. 특정 인터페이스를 구현하는 플러그인 폴더에서 모든 .DLL을 읽을 수있었습니다. 내가 알아 내려고하는 것은 "호스트"MDI 부모 응용 프로그램과 MDI 자식을 만들려는 .DLL에 포함될 양식 사이의 최선의 통신 방법입니다.플러그인 아키텍처 - DLL에있는 어린이를 인식하는 MDI 부모 형식 만들기
현재 MDI 상위에 추가 할 .DLL에서 ToolStripMenuItem 개체 만 반환합니다. 또한 .DLL에서 ToolStripMenuItems로 연결된 이벤트가 .DLL의 코드로 전파되는지 테스트했습니다. 또한 인터페이스를 통해 Form 객체를 반환하고 플러그인 폴더가 "스캔 됨"이므로 해당 양식을 열었습니다.
그러나 이러한 양식 MDI 자녀를 어떻게 만들 것인지 명확하지 않습니다. 또한 .DLLs에 거주하는 다른 양식도 MDI 자녀 여야합니다. VS 2008 Addin 프로젝트를 작성하여 무슨 일이 진행되고 있는지, Addin이 ToolStripMenuItems에 추가하고 다른 작업을 수행하는 Application 개체를 허용하는 것으로 보입니다. .DLL 안에 메뉴를 빌드하는 코드. 이것은 MDI가 각 .DLL에서 ToolStripMenuItem을 요청하고 반환 된 개체를 자체 메뉴에 추가하는 지금까지 해본 것과는 정반대입니다.
응용 프로그램 개체를 동일한 방식으로 수락하도록 내 플러그인 아키텍처를 설계하면 MDI 자식으로 열 수있는 유일한 방법이 있습니까? .DLL에 응용 프로그램 개체를 전달하지 않음으로써 두통이 나에게 알려지지 않은 다른 것을 요청하고 있습니까?
나는 비슷한 것을하고 싶어합니다. 이거 작동시켜 봤어? 호스트 양식에서 폴더를 모니터하는 방법을 모르는 상태에서 플러그 인을 추가하기위한 올바른 인터페이스를 확인하는 방법을 알았습니다. 코드에 대한 링크가 없다면 게시 하시겠습니까? 그런 다음 어떻게 작동하는지 샘플 코드를 작성 하시겠습니까? –