2011-09-01 7 views
1

나는 그들을 위해 폴링하는 동안 장기 실행 작업을 시작하는 Windows 서비스가 있습니다. 진행중인 태스크를 방해하지 않고 서비스 자체 및 태스크 라이브러리를 갱신 할 수있는 기능을 빌드하고자합니다. 이 작업을 수행하려는 방법은 바이너리를 섀도 잉하고 섀도 잉 된 폴더에서 별도의 프로세스를 시작하는 표준 기술을 사용하는 것입니다. 나가 가서 자기 자신의 것을 굴리기 전에, 내가 저기에서 도움이되는 도서관이 있는지 찾아보고 싶다.구성 요소의 핫 업데이트 - 모든 .NET API?

나는 MAF & MEF을 조사한 결과 내 요구 사항을 충족시키지 못한다고 결론을 냈습니다. 모든 포인터 크게 감사하겠습니다.

+1

각 도구/작업을 자체 AppDomain에로드하고 공유 인터페이스를 사용하십시오. – kenny

+0

작업이 아직 실행 중일 때 바이너리를 업데이트하는 데 도움이되지 않는다고 생각합니다. 내가 놓친 게 있니? –

+0

다음과 같은 기술을 사용하여 아래 답변을 제공했습니다 ... 물론. 난 잠시 동안 그것을 시도하지 않은,하지만 당신이 새 ApplicationDomain에 새 DLL을로드하고 그것을 시작할 수있을 것 같아요. 실행중인 작업이 완료되면 이전 응용 프로그램 도메인을 삭제할 수 있으므로 도구 어셈블리가 언로드됩니다. 탑 셀프 (Topshelf)는 자신의 툴링을보다 쉽게 ​​제작할 수 있습니다. – kenny

답변

2

Windows 서비스 구현을 위해 Topshelf을 살펴보십시오. 정말 멋집니다. 나는 선반 개념이 당신이 원하는 것이라고 생각합니다. http://topshelf-project.com/documentation/shelving/

+0

이것은 좋은 도구처럼 보입니다. 나는 이것에 대해 더 깊이 파고들 것이다. –

관련 문제