में उपयोगकर्ता नाम पर लॉग इन करें मैं विंडोज 7 में उपयोगकर्ता नाम पर वर्तमान लॉग इन कैसे प्राप्त करूं (यानी वह उपयोगकर्ता जो कंसोल पर भौतिक रूप से लॉग ऑन है जिसमें प्रोग्राम मैं लॉन्च कर रहा हूं) चल रहा है।C#
उदाहरण के लिए यदि मैं "मेनयूसर" के रूप में लॉग ऑन हूं और अपने कंसोल एप्लिकेशन (जो उपयोगकर्ता नाम पर लॉग इन प्रदर्शित करेगा) को "सबयूसर" के रूप में चलाएगा, तो प्रोग्राम केवल वर्तमान में लॉग ऑन उपयोगकर्ता के रूप में "सबयूसर" लौटाता है।
मैंने उपयोगकर्ता नाम प्राप्त करने के लिए निम्न 2 तकनीकों का उपयोग किया। दोनों मुझे वह चीज़ नहीं मिल रहे हैं जो मैं चाहता हूं। जहाँ से इस स्क्रिप्ट को चलाने की जाती है कि हालांकि, इस VBScript कोड वापस लौटा उपयोगकर्ता नाम उपयोगकर्ता खाते पर ध्यान दिए बिना लॉग ऑन
System.Environment.GetEnvironmentVariable("USERNAME")
System.Security.Principal.WindowsIdentity.GetCurrent().User;
नोट:
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set compsys_arr = objWMIService.ExecQuery _
("Select * from Win32_ComputerSystem")
For Each sys in compsys_arr
Wscript.Echo "username: " & sys.UserName
Next
किसी भी जिस तरह से यह सी # में संभव है?
http://forums.whirlpool.net.au/archive/793434 देखें। मुझे लगता है कि आप कोड बदल सकते हैं ताकि यह आपके वीबीस्क्रिप्ट के लिए बिल्कुल फिट हो सके। – weismat
वह वीबीस्क्रिप्ट मेरे लिए काम नहीं करता है (Win2003 सर्वर के विरुद्ध चल रहा है)। साथ ही, यदि उपयोगकर्ता ने आपके प्रोग्राम को किसी भिन्न उपयोगकर्ता खाते के अंतर्गत चलाने का विकल्प चुना है, तो * आप * इसे क्यों अनदेखा करना चाहते हैं? –
@ डेमियन, मुझे लॉग ऑन उपयोगकर्ता के आधार पर कार्यक्रम में निर्णय लेने की ज़रूरत है, यही कारण है कि! – Santhosh