Microsoft.Sdc.Tasks.ServiceProcess.Exists
을 사용하여 서비스가 존재하는지 확인하려고합니다. 문서에서이 예제를 사용하는 예제는 없습니다. 아무도 없습니까?Microsoft.Sdc.Tasks에서 서비스 존재 MSBuild 작업을 사용하는 예는 무엇입니까?
1
A
답변
1
본인은 프로덕션 환경에서이 파일을 실제로 사용하지 않았으며 사용중인 버전 (릴리스 2.1.3155.0 사본 있음)과 함께 제공되는 .chm 도움말 파일에 따라 작업에 다음과 같은 내용이 포함되어 있습니다. 특성 :
지정된 서비스가 서비스가- .
ServiceName을 "시스템에 서비스를 식별하는 짧은 이름 (예 : 'W3SVC')으로 설정해야합니다.
잘 알려진 서비스 (예 : mssqlserver)를 사용하여 시도하고 다른 두 속성 (DoesExist/IsDisabled)의 결과를 확인할 수 있습니다.
업데이트 : 다음은 샘플 (작품)입니다 :
가져 오기 작업 후> < 출력 (예)
< Microsoft.Sdc.Tasks.ServiceProcess.Exists ServiceName은 = "서버"전화 TaskParameter는 = "DoesExist"PROPERTYNAME는 = />
"서비스는? $ (존재) 존재"를 = /> < /Microsoft.Sdc.Tasks.ServiceProcess.Exists>< 메시지 텍스트를 "존재"
2
서비스를 확인한 후 서비스를 중지하고 서비스를 중지 한 다음 서비스를 다시 시작합니다 (서비스가있는 경우 서비스가 시작된 경우).
도우미 대상 :
<target name="service_exists">
<script language="C#">
<references>
<include name="System.ServiceProcess.dll" />
</references>
<code><![CDATA[
public static void ScriptMain(Project project) {
String serviceName = project.Properties["service.name"];
project.Properties["service.exists"] = "false";
project.Properties["service.running"] = "false";
System.ServiceProcess.ServiceController[] scServices;
scServices = System.ServiceProcess.ServiceController.GetServices();
foreach (System.ServiceProcess.ServiceController scTemp in scServices)
{
if (String.Compare(scTemp.ServiceName.ToUpper(), serviceName.ToUpper()) == 0)
{
project.Properties["service.exists"] = "true";
project.Log(Level.Info, "Service " + serviceName + " exists");
if (scTemp.Status.Equals(System.ServiceProcess.ServiceControllerStatus.Running))
project.Properties["service.running"] = "true";
project.Log(Level.Info, "Service " + serviceName + " is running: " + project.Properties["service.running"]);
return;
}
}
project.Log(Level.Info, "Service " + serviceName + " doesn't exist");
}
]]></code>
</script>
</target>
사용법 :
<property name="service.name" value="Selection.Service" />
<call target="service_exists" />
<servicecontroller action="Stop" service="${service.name}" machine="${host}" timeout="60000" if="${service.exists}"/>
<!-- Do something -->
<servicecontroller action="Start" service="${service.name}" machine="${host}" timeout="60000" if="${bool::parse(service.exists) and bool::parse(service.running) == true}"/>
희망 난 아무것도 놓치지 않았다 - 우리 빌드 관리자가 3600 개 라인을 통해 이제 하나 개의 MSBuild 파일에 모든 것을 유지 : |
관련 문제
- 1. .net 웹 서비스 호출에서 클라이언트 인증서를 사용하는 예는 무엇입니까?
- 2. StringBuffer를 사용하는 실제적인 예는 무엇입니까?
- 3. libpurple을 사용하는 좋은 예는 무엇입니까?
- 4. FinalBuilder에서 MSBuild 작업을 호출하는 방법은 무엇입니까?
- 5. msbuild 작업을 저장할 외부 파일
- 6. 클로저에 '바인딩'을 사용하는 좋은 예는 무엇입니까?
- 7. Xerces XNI를 사용하는 간단한 예는 무엇입니까?
- 8. Flash를 UI로 사용하는 네이티브 앱의 예는 무엇입니까?
- 9. Email :: Stuff를 사용하는 방법의 예는 무엇입니까?
- 10. Django에서 MongoDB를 올바르게 사용하는 좋은 예는 무엇입니까
- 11. JavaScript에서 특성을 사용하는 OOP의 좋은 예는 무엇입니까?
- 12. JGAE에서 jpa entitymanager와 함께 memcache를 사용하는 예는 무엇입니까?
- 13. 다른 사용자 지정 MSBuild 작업을 사용하는 사용자 지정 MSBuild 작업 작성
- 14. ASP.NET : 게시 후 MSBuild 작업을 실행하십시오.
- 15. win208 x64에서 프로그래밍 방식으로 InstallShield msbuild 작업을 빌드하는 방법은 무엇입니까?
- 16. Java에서 WS-Eventing 클라이언트의 좋은 예는 무엇입니까?
- 17. Chiba xForm을 안정적인 웹 서비스 (db 존재)
- 18. 백그라운드에서 실행되는 Android 앱을 만드는 방법, 서비스 예는 무엇입니까?
- 19. 서비스 위치 프로토콜에 대한 클라이언트 구현의 예는 무엇입니까?
- 20. 빌드 머신에서만 MSBuild 복사 작업을 실행하는 방법은 무엇입니까?
- 21. Wicket ChoiceFilteredPropertyColumn의 예는 무엇입니까?
- 22. 다이얼을 만드는 예는 무엇입니까?
- 23. IronPython에서 ctypes의 예는 무엇입니까?
- 24. xslt의 우아한 예는 무엇입니까?
- 25. 실제 ACID의 예는 무엇입니까?
- 26. 예는
- 27. 비동기 호출과 비동기 작업을 사용하는 웹 서비스 호출의 차이점
- 28. 서명 트리를 사용하는 프로덕션 응용 프로그램의 예는 무엇입니까?
- 29. 프리즘과 함께 WCF RIA 서비스를 사용하는 예는 무엇입니까?
- 30. 멀티 스레드 응용 프로그램에서 장벽을 사용하는 실제 세계의 예는 무엇입니까?