मैंने एक विधि को ठीक करने का प्रयास किया है जो जांचता है कि उपयोगकर्ता ने अपने कंप्यूटर पर स्काइप इंस्टॉल किया है या नहीं। मैं स्काइप अपने कंप्यूटर पर स्थापित जांचें कि क्या स्काइप स्थापित है
- : यह मैं तय/के साथ आते हैं स्काइप नहीं मिला हालांकि यह स्थापित है। लेकिन मेरी विधि अन्य प्रोग्रामों को पाती है जो एक ही निर्देशिका में हैं।
क्या किसी को यह जांचने के बारे में कोई विचार है कि कंप्यूटर पर स्काइप स्थापित है या नहीं?
विधि मैं प्रयोग किया जाता है यह एक करने के लिए simillrar हैं:
using Microsoft.Win32;
//Function uses Microsoft.Win32 to check registry value of
//HKEY_CURRENT_USERSoftwareSkypePhoneSkypePath and returns false if
//the key is null
private bool isSkypeUser()
{
RegistryKey skype = Registry.CurrentUser.OpenSubKey(@"SoftwareSkypePhone");
if (skype != null && skype.GetValue("SkypePath") != null)
{
return true;
}
else
{
return false;
}
}
http://brcline.com/blog/?tag=skype
संपादित करें:
यह काम कर सकता है। बस सुनिश्चित करें कि रजिस्ट्री मान को अनइंस्टॉल करने के बाद हटा दिया गया है। अन्यथा आपको झूठी सकारात्मक मिल सकती है। –
मैंने उस विधि की कोशिश की है लेकिन वह मेरे लिए काम नहीं करता है .. मैंने वास्तव में यह जान लिया कि क्यों ... @ssg मैं कैसे जांचूं कि रजिस्ट्री मान अभी भी मौजूद है या नहीं? –
अपने कंप्यूटर से स्काइप अनइंस्टॉल करें और देखें कि मान रहता है या हटा दिया जाता है या नहीं। अगर यह रहता है कि वह विधि काम नहीं करेगी। आप स्काइप से संबंधित अन्य रजिस्ट्री कुंजियों को आजमा सकते हैं। आप Sysinternals से ProcMon का उपयोग करके रजिस्ट्री गतिविधि की निगरानी कर सकते हैं। –