2011-09-24 12 views
15

VMWare कार्य केंद्र कुछ काफी शांत है, जबकि एक वर्चुअल मशीन चल रहा है जब मैं बंद विंडोज करने की कोशिश करता है:कस्टम संदेश के साथ विंडोज रोकें बंद

VMWare prevents Windows shutdown with a custom message

आम तौर पर, हम देखना चाहते हैं एक "इस कार्यक्रम विंडोज रोक रहा है "नए की बजाय संदेश" बंद करने से 1 वर्चुअल मशीन उपयोग में है "।

वीएमवेयर यह कैसे करता है? मैं Google पर इसके बारे में कोई एपीआई नहीं ढूंढ पा रहा हूं।

+0

मुझे पता है कि कमांड लाइन पर शट डाउन कमांड का उपयोग करते समय कोई कस्टम शटडाउन संदेश प्रदर्शित करने के लिए निर्दिष्ट कर सकता है, शायद यह संबंधित है? – stijn

उत्तर

11

आप Vista here में पेश किए गए परिवर्तनों के बारे में सब कुछ पढ़ सकते हैं। आपको वास्तव में उस लेख को बहुत सावधानी से पढ़ना चाहिए।

एपीआई जिन्हें आप ढूंढ रहे हैं ShutdownBlockReasonCreate, ShutdownBlockReasonDestroy और ShutdownBlockReasonQuery हैं। याद रखें कि ये एपीआई केवल Vista/2008 सर्वर पर उपलब्ध हैं। आपको 2000/XP पर पतन वापस व्यवहार लागू करना होगा।

यदि आपको शटडाउन को अवरुद्ध करने की आवश्यकता है तो आप ShutdownBlockReasonCreate को अपनी मुख्य विंडो में हैंडल पास कर रहे हैं और एक स्ट्रिंग के कारण को कॉल करते हैं। यह स्ट्रिंग शटडाउन अवरुद्ध संवाद में प्रदर्शित होती है, यानी आपके स्क्रीनशॉट में "1 वर्चुअल मशीन उपयोग में है"।

यदि शटलडाउन को अवरोधित करने वाला ऑपरेशन पूरा हो जाता है तो आप ShutdownBlockReasonDestroy पर कॉल करते हैं।

ध्यान दें कि आपको सभी टुकड़ों को एक साथ फिट करने के लिए अभी भी WM_QUERYENDSESSION लागू करना होगा। यह वह हिस्सा है जो वास्तव में शटडाउन को अवरुद्ध करता है।

XP पर आपको WM_ENDSESSION का भी जवाब देना चाहिए और यदि आपका ऐप बंद हो गया है तो यह संकेत देने वाला संदेश दिखाने के लिए विनम्र है। यदि आप ऐसा नहीं करते हैं तो उपयोगकर्ता अपने सिर को खरोंच कर रहा है कि क्यों कंप्यूटर शटडाउन के निर्देश को अनदेखा कर रहा है।

+1

[WM_QUERYENDSESSION का जवाब देना न भूलें।] (Http://msdn.microsoft.com/en-us/library/ms700677 (v = vs.85) .aspx) – bzlm

+0

आह, धन्यवाद! मैंने उन लोगों को Google के माध्यम से पाया, लेकिन दस्तावेज यूआई को प्रभावित करने के तरीके में बहुत कुछ नहीं करता है, इसलिए मैंने सोचा कि संदेश प्रदर्शित होगा, उदाहरण के लिए, संदेश बॉक्स का उपयोग करना। – foxy

+1

कुंजी विचलित लेख है जिसे मैंने उत्तर की पहली वाक्य में जोड़ा है। शटडाउन को संभालने के लिए यह आपकी मार्गदर्शिका है। एपीआई दस्तावेज हमेशा थोड़ी अधिक terse है। –

संबंधित मुद्दे