को रोकने और पुनरारंभ करने के लिए प्री और पोस्ट बनाएं I प्रोजेक्ट में निर्मित विंडोज सेवा को शुरू और बंद करने के लिए बिल्ड इवेंट्स का उपयोग करने के साथ प्रयोग कर रहा हूं। हालांकि पूर्व & पोस्ट बिल्ड के लिए एक त्रुटि स्तर 255 के साथ विफल रहता है। मैंने बिना किसी किस्मत के प्री-बिल्ड के साथ इसे पकड़ने का प्रयास किया है।ईवेंट विंडोज सेवा
पूर्व निर्माण
if "$(ConfigurationName)" == "Debug"
(
net stop myService
if errorlevel 2
if errorlevel 255
:exit
:exit
)
के बाद निर्माण
if "$(ConfigurationName)" == "Release"
(
copy $(TargetDir) C:\Media\Bin\$(ProjectName)
if errorlevel 1 BuildEventFailed
:BuildEventFailed
mkdir C:\Media\Bin\$(ProjectName)
copy $(TargetDir) C:\Media\Bin\$(ProjectName)
)
else if "$(ConfigurationName)" == "Debug"
(
net start myService
)
मैं, 'प्रति है बंद करो,, शुरू करने के लिए पसंद करते हैं exit' सभी में बाद के निर्माण के बाद से सेवा पथ शायद एक करने के लिए सीधे बात नहीं करनी चाहिए/बिन/रिलीज फ़ोल्डर। यह सेवा को रोकने से रोकता है लेकिन अगर निर्माण अन्य कारणों से विफल रहता है तो कभी भी पुनरारंभ नहीं होता है। – Dan
@Dan का सही उत्तर है। यह आपको सेवा को पुनर्स्थापित/पुनर्स्थापित किए बिना आसानी से विभिन्न बिल्ड कॉन्फ़िगरेशन, शाखाओं आदि पर स्विच करने देता है। एसडीएम के लिंक में एक टिप्पणी से, आप सेवा को स्वतः इंस्टॉल भी कर सकते हैं ताकि नए डेवलपर्स के लिए यह काम करता है। –