2011-03-18 5 views
1

C# Windows Forms 대화 형 응용 프로그램과 관련 C# Windows 서비스가 있습니다.C# Windows Forms GUI - Windows 시작 모니터링

이들이 배포 된 특정 컴퓨터에서 로그인 및 앱 시작은 자동으로 수행됩니다. 대화 형 앱은 서비스가 시작되기 전에 항상 시작됩니다. 앱에 서비스에 연결되었을 때 표시 할 상태 표시기가 있지만이 컴퓨터는 느리고 서비스가 마침내 시작되기까지 45-60 초가 걸립니다. 이 시간 동안 화면에는 아무런 변화가 없습니다.

저는 서비스가 빨리 시작된다는 점을 지적해야합니다. 시작하는 데 시간이 많이 걸리는 종속 (및 기타) 서비스입니다.

응용 프로그램이 서비스를 기다리는 동안 표시되는 Windows 시작 진행 상황을 표시하고 싶습니다. started_automatic_services/automatic_services와 같은 것을 보여주는 진행 막대를 보여주는 것을 생각하고있었습니다. 다른 적절한 방법이 있습니까?

답변

2

하나의 가능성은 당신이 적어도 MSDN 샘플 Subscribing to and Consuming Management Events 당신이 가야하기에 충분합니다

진행

Starting services: 
Service 1 started 
Service 2 started etc. 
의 아이디어를 제공 할 수 있도록 것이다, 서비스가 시작 모니터링 할 WMI event query을 사용하는 것입니다, 상태 변경에 대한 서비스 쿼리를 구체적으로 보여주기 때문입니다.

+0

나는 이것을 결코 사용해 본 적이 없다 ... 좋다. – pilotcam

+0

WMI를 쿼리하기 전에 WMI 서비스를 시작해야한다는 점이 하나의 경고입니다 – pilotcam

0

왜 트레이 아이콘을 사용하지 않습니까? 서비스에 대한 '연결이 끊어 졌거나 초기화되지 않은 연결을 나타내는 이미지가 처음 사용 된 것이고 서비스가 시작되면'정상 '또는'모두 정상입니다 '아이콘으로 변경할 수 있습니다. 일부 AV 소프트웨어 클라이언트가 그렇게합니다.

같은 아이콘을 오버레이와 함께 사용할 수도 있습니다. 오른쪽 하단 모서리에 작은 모래 시계가 있거나 이와 유사한 것을 사용하여 제거 할 수도 있습니다.

사용자가 부팅 할 때마다 진행률 막대를 표시하는 것이 다소 방해가 될 수 있습니다.