2009-06-24 3 views
1

여러 개의 복합 WPF 응용 프로그램을 구성하여 단일 셸 프로젝트를 공유하지만 다른 App.config 파일의 모듈 카탈로그를 채우려면 어떻게해야합니까?여러 개의 복합 WPF 응용 프로그램을 구성하여 단일 셸 공유

WPF 용 복합 응용 프로그램 가이드를 사용하여 응용 프로그램 모음을 작성하고 있습니다. 각 응용 프로그램의 기능은 Shell의 App.config에 나열된 다른 모듈의 가용성에 따라 결정됩니다. 각 응용 프로그램에 다른 App.config를 제공하여 각 응용 프로그램에서 사용할 모듈을 지정할 수 있습니다.

그러나 공통된 모양과 느낌을 위해 모든 응용 프로그램간에 하나의 Shell 프로젝트를 공유하고 싶습니다. 처음에는 각 응용 프로그램에 대한 솔루션을 만들고 Shell 프로젝트를 추가 한 다음 관련 모듈을 추가했습니다. 문제는 일반적인 셸 프로젝트는 하나의 App.config 파일 만 가지고 있으며 솔루션 단위로 변경할 수는 없다는 것입니다.

코드를 통해 카탈로그를 채우는 것은이 문제를 피할 수 없습니다. - 사용중인 솔루션에 의해 어떻게 든 활성화되어야하는 응용 프로그램 관련 코드가 여전히 쉘에 남아 있습니다.

답변

1

내가 결정한 것은 쉘을 자체 모듈로 취급하는 것이 었습니다. 각 응용 프로그램에는 고유 한 App.config 파일이 포함 된 고유 한 솔루션과 프로젝트가 있습니다. 또한 자체 Bootstrapper 클래스가 있습니다. 각 응용 프로그램의 부트 스트 래퍼는 쉘을 인스턴스화합니다.

0

하드 코딩 모듈과 구성에서 모듈로드와 별도로 지정된 디렉토리에서 동적으로 모듈을로드 할 수도 있습니다.

모두 동일한 셸을 사용하는 다른 "앱"을 설정하려면 각 응용 프로그램에 맞는 모듈을 별도의 폴더에 복사하여 다른 응용 프로그램을 만드는 배치 파일을 만듭니다.

복합 가이던스 라이브러리 설명서에는 프로젝트를 설정하여 디렉토리에서 모듈을 동적으로로드하는 방법에 대해 자세히 설명되어 있습니다.

관련 문제