2012-03-12 12 views
5

मैंने एक विधि को ठीक करने का प्रयास किया है जो जांचता है कि उपयोगकर्ता ने अपने कंप्यूटर पर स्काइप इंस्टॉल किया है या नहीं। मैं स्काइप अपने कंप्यूटर पर स्थापित जांचें कि क्या स्काइप स्थापित है

  • मैं एक विधि है कि
  • मेरे विधि मेरी स्थापित प्रोग्राम मिलते हैं, लेकिन यह कर सकते हैं मेरी स्थापित कार्यक्रमों के सभी के माध्यम से लूप ठीक करने के बाद राशि

    1. : यह मैं तय/के साथ आते हैं स्काइप नहीं मिला हालांकि यह स्थापित है। लेकिन मेरी विधि अन्य प्रोग्रामों को पाती है जो एक ही निर्देशिका में हैं।

    क्या किसी को यह जांचने के बारे में कोई विचार है कि कंप्यूटर पर स्काइप स्थापित है या नहीं?

    विधि मैं प्रयोग किया जाता है यह एक करने के लिए 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

    संपादित करें:

    Method to loop through all installed programs

  • उत्तर

    6

    बस रजिस्ट्री का उपयोगस्काइप शॉर्टकट या फ़ोल्डर की तलाश में StartMenu फ़ोल्डर्स के माध्यम से लूप करना एक गंदे कामकाज है। आपको निम्नलिखित स्पेशलफोल्डर गणना का उपयोग करना होगा:

    var startMenuPath = Environment.GetFolderPath(Environment.SpecialFolder.CommonPrograms) 
    

    आशा है कि इससे मदद मिलती है!

    +1

    यह काम कर सकता है। बस सुनिश्चित करें कि रजिस्ट्री मान को अनइंस्टॉल करने के बाद हटा दिया गया है। अन्यथा आपको झूठी सकारात्मक मिल सकती है। –

    +0

    मैंने उस विधि की कोशिश की है लेकिन वह मेरे लिए काम नहीं करता है .. मैंने वास्तव में यह जान लिया कि क्यों ... @ssg मैं कैसे जांचूं कि रजिस्ट्री मान अभी भी मौजूद है या नहीं? –

    +1

    अपने कंप्यूटर से स्काइप अनइंस्टॉल करें और देखें कि मान रहता है या हटा दिया जाता है या नहीं। अगर यह रहता है कि वह विधि काम नहीं करेगी। आप स्काइप से संबंधित अन्य रजिस्ट्री कुंजियों को आजमा सकते हैं। आप Sysinternals से ProcMon का उपयोग करके रजिस्ट्री गतिविधि की निगरानी कर सकते हैं। –

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