2009-08-11 3 views
15

में प्रोग्राम के रूप में मैं Windows वर्कस्टेशन लॉक करने के लिए इस उदाहरण में भाग:लॉक विंडोज वर्कस्टेशन सी #

using System.Runtime.InteropServices; 
... 
[DllImport("user32.dll", SetLastError = true)] 
static extern bool LockWorkStation(); 

... 
if (!LockWorkStation()) 
    throw new Win32Exception(Marshal.GetLastWin32Error()); // or any other thing 

वहाँ इस स्निपेट के लिए एक शुद्ध कामयाब विकल्प है? अर्थात्, पी-इनवॉक के बिना।

उत्तर

16

कोई नहीं है। यह क्रिया प्राप्त करने का यह सबसे अच्छा तरीका है।

भले ही यह बीसीएल में प्रदान किया गया हो, इसके कार्यान्वयन लगभग निश्चित रूप से आपके नमूने के समान होंगे। ऐसा कुछ नहीं है जो सीएलआर मूल रूप से लागू होगा। स्पष्टीकरण के लिए

+0

+1। –

+0

@ Ronklein: अरे, मैं वही काम करना चाहता हूं। i.e प्रोग्रामेटिक रूप से विंडोज डेस्कटॉप लॉक करना और वर्तमान उपयोगकर्ता के सत्र को बंद किए बिना लॉगिन स्क्रीन दिखाता है। यह वही या कुछ अलग करता है ??? आपके उपरोक्त समाधान के लिए धन्यवाद, यह कई तरीकों से मेरी सहायता करता है। बस मुझे ऊपर सवाल स्पष्ट करें। –

+0

@ हेमांग रामी, मुझे लगता है कि आप जो करने का प्रयास करते हैं वह वही है जो मैं पूछ रहा था: वर्तमान सत्र को सक्रिय रखते हुए वर्कस्टेशन को लॉक करना। –

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

  • कोई संबंधित समस्या नहीं^_^