मेरे पास एक ऐसा एप्लिकेशन है जो यह देखने के लिए जांचता है कि उपयोगकर्ता कब शुरू होता है (यदि इसे नहीं बनाया जाता है) हर बार शुरू होता है। यह निम्नानुसार किया जाता है:यह पता लगाने का तेज़ तरीका है कि कोई उपयोगकर्ता सिस्टम पर मौजूद है या नहीं?
bool bUserExists = false;
DirectoryEntry dirEntryLocalMachine =
new DirectoryEntry("WinNT://" + Environment.MachineName + ",computer");
DirectoryEntries dirEntries = dirEntryLocalMachine.Children;
foreach (DirectoryEntry dirEntryUser in dirEntries)
{
bUserExists = dirEntryUser.Name.Equals("UserName",
StringComparison.CurrentCultureIgnoreCase);
if (bUserExists)
break;
}
समस्या अधिकांश सिस्टमों पर है जहां इसे तैनात किया गया है। इसमें 6-10 सेकंड लग सकते हैं, जो बहुत लंबा है ... मुझे इसे कम करने के लिए एक रास्ता खोजने की जरूरत है (जितना संभव हो सके)। क्या बेहतर या तेज जिस तरह से मैं यह सत्यापित करने के लिए उपयोग कर सकता हूं कि कोई उपयोगकर्ता सिस्टम पर मौजूद है या नहीं?
मुझे पता है कि इसे हल करने के अन्य तरीके हैं, जैसे अन्य अनुप्रयोग 10 सेकंड के लिए सोते हैं, या यह उपकरण तैयार होने पर एक संदेश भेजता है, आदि ... लेकिन अगर मैं उस समय को बहुत कम कर सकता हूं उपयोगकर्ता को खोजने के लिए, यह मेरे जीवन को और अधिक आसान बना देगा।
आप मशीन पर एक स्थानीय उपयोगकर्ता के लिए देख रहे हैं? –
हाँ - केवल स्थानीय उपयोगकर्ता – Shaitan00
क्या आपके उपयोगकर्ता को स्टार्टअप समाप्त होने से पहले मौजूद होना चाहिए? –