Microsoft MVP성태의 닷넷 이야기
개발환경 구성 : 24. Smart Start and Stop Service in VS.NET Build [링크 복사], [링크+제목 복사],
조회: 11126
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

Smart Start and Stop Service in VS.NET Build
; http://blogs.msdn.com/irenak/archive/2006/09/13/752075.aspx

NT 서비스 프로그램에 대한 빌드를 할 때, 빌드 이벤트로 넣어두면 좋겠지요. ^^

If you have a windows service project as part of your solution, you’re quite familiar with the issues it presents -- if the service is running and you’re recompiling either the service project itself, or any assemblies loaded by the service, you’ll get a build error. The script below, courtesy of Scott Jennings, is a way to stop and start service, if it’s installed and is running/stopped correspondingly. All that remains to do it to add the script invocation code to pre-build and post-build event command lines in Visual Studio.

' Usage:

' start /w wscript "\ServiceHelper.vbs"

' Example:

' start /w wscript "C:\Projects\XYZ\ServiceHelper.vbs" start myservice

Dim WMIService

Dim Services

Dim Service

Dim action

Dim result

If Wscript.Arguments.Count <> 2 Then

Wscript.Echo "Usage: ServiceHelper.vbs start|stop ServiceName"

Wscript.Quit 1

End If

Set WMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")

Set Services = WMIService.ExecQuery("Select * from Win32_Service where Name = '" + Wscript.Arguments(1) + "'")

If Services.Count > 1 Then

Wscript.Echo "More than one matching service"

Wscript.Quit 1

ElseIf Services.Count = 1 Then

action = Wscript.Arguments(0)

For Each Service In Services

If action = "start" AND Service.State <> "Running" Then

result = Service.StartService()

ElseIf action = "stop" AND Service.State <> "Stopped" Then

result = Service.StopService()

End If

Next

Wscript.Quit(result)

Else

Wscript.Echo "No such service found"

Wscript.Quit 1

End If

Special thanks to Scott Jennings who created this solution!








[최초 등록일: ]
[최종 수정일: 9/14/2006]


비밀번호

댓글 작성자
 




1  2  3  4  5  6  7  8  9  10  11  12  13  14  [15]  ...
NoWriterDateCnt.TitleFile(s)
825정성태8/23/200710173개발 환경 구성: 110. AutoExNT 도구
824정성태8/16/200710844개발 환경 구성: 109. Code Project Browser Add-In for Visual Studio 2005
823정성태8/16/200713869IIS : 16. 인증서 검증 - CRL 체크 설정
822정성태8/16/200710799TFS : 124. VSTS - Architecture Edition Power Tools - 8월 CTP
821정성태8/15/20079805TFS : 123. TFS 2008의 팀 빌드 관련 소개
820정성태8/14/200711313.NET 3.5 : 28. 한번 더 생각해 보는 C# 3.0 의 개체 초기화 지정자(Object Initializers)
819정성태8/13/200710778TFS : 122. DB Professional - Power Tools 배포
818정성태8/13/200711201VS.NET IDE : 38. Visual Studio 2008 Shell 맛보기 [1]
817정성태8/10/200710925VS.NET IDE : 37. Customising WCF Proxy Generation in Visual Studio 2008
816정성태8/7/200711040TFS : 121. TFS 가이드 최종 버전
815정성태8/7/200710340TFS : 120. Rosario - 개선된 작업항목 추적 기능 [1]
814정성태8/6/200710556TFS : 119. MSBuild 를 이용한 위성 어셈블리 자동 빌드
813정성태7/31/200710705TFS : 118. TeamPlain 의 진화 : Team System Web Access Power Tool
812정성태7/31/200710253TFS : 117. Offline 모드 지원
811정성태7/31/200710690개발 환경 구성: 108. 문서 - AD 서버를 가상 머신으로 운영.
810정성태7/27/200710120TFS : 116. VS.NET 2008 TFS 설치 가이드 (베타)
809정성태7/27/200710693TFS : 115. 인터넷 연결 및 HTTPS 설정
808정성태7/19/200710691TFS : 114. MSF Process Guidance Generator Tool
807정성태7/19/200713965개발 환경 구성: 107. 터미널 서비스에서 꼭 알아야 할 기능 - shadow [1]
806정성태7/15/200710338TFS : 113. TFS 2008 - SharePoint 분리 및 통합 지원
805정성태7/15/200710415TFS : 112. MSBuild 프로젝트 이외의 프로젝트를 빌드
804정성태7/14/200711962TFS : 111. 팀 빌드에서 셋업 프로젝트 연결 [1]
803정성태7/14/200710404개발 환경 구성: 106. 롱혼 터미널 서비스에서의 콘솔 관리
802정성태7/13/200710681TFS : 110. 팀 빌드 - 테스트 결과를 알아내는 MSBuild Task
801정성태7/12/200710816개발 환경 구성: 105. 환경 설정 정보 암호화
800정성태7/10/200712161.NET 3.5 : 27. IQueryable 구현 방법 [3]
1  2  3  4  5  6  7  8  9  10  11  12  13  14  [15]  ...