2010-05-24 6 views
5

मेरे पास एसी # एप्लिकेशन है जो 32-बिट और 64-बिट ओएस दोनों पर चलता है। मेरे ऐप में, मैं प्रोग्रामिक रूप से जांच कैसे कर सकता हूं कि ठोस कार्य स्थापित है या कंप्यूटर पर नहीं। अगर हम इसे रजिस्ट्री कुंजी पढ़कर देख सकते हैं, तो प्रदान करें मुझे 32-बिट और 64-बिट दोनों के लिए पथ। मुझे बताएं कि इसे जांचने के अन्य तरीके भी हैं।जांच Solidworks स्थापित है?

उत्तर

4

रूप

private static bool IsInstalled(string ProductName) 
{ 

    bool rv = false; 
    ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Product"); 
    ManagementObjectCollection Products = searcher.Get(); 
    if (Products.Count != 0) 
    { 
     foreach (ManagementObject product in Products) 
     { 
      if (product.Properties["Name"].Value.ToString() == ProductName) 
      { 
       rv = true; 
      } 
     } 
    } 
    return rv;   
} 
+1

मैं प्रबंधन ऑब्जेक्ट शोधकर्ता और प्रबंधन ऑब्जेक्ट कोलेक्शन के आसपास 'उपयोग' कथन फेंक दूंगा ताकि यह सुनिश्चित किया जा सके कि वे ठीक से निपटान कर रहे हैं। – SwDevMan81

+0

जब आप 'वापसी सत्य' द्वारा 'rv = true' को बदलकर उत्पाद की स्थापना करते हैं तो 'foreach' लूप तोड़ सकता है (' rv' घोषणा अनावश्यक हो जाती है) – alex

1

इस प्रकार आप WMI इस्तेमाल कर सकते हैं आवेदन करता है, तो इसके इंस्टॉल हो SolidWorks के शुरू करने की आवश्यकता है? यदि हां, तो मैं सभी मेरे स्टैंड-अलोन शुरू (गैर ऐड-इन)

Public swApp As SldWorks.SldWorks 

Function GetSolidWorks(ForceLaunch As Boolean) As Boolean 
    If Not swApp Is Nothing Then 
     SetSolidWorksVisibility() 
     Return True 
    Else 
     Try 
      swApp = GetObject(, "SldWorks.Application") 
      If swApp Is Nothing Then Return False 

      SetSolidWorksVisibility() 
      Return True 
     Catch ex As Exception 
      If Not ForceLaunch Then Return False 

      swApp = CreateObject("SldWorks.Application") 
      If swApp Is Nothing Then Return False 

      SetSolidWorksVisibility() 

      'simple timer to wait for solidworks to repond 
      System.Threading.Thread.Sleep(5000) 

      Return True 
     End Try 
    End If 
End Function 

Private Sub SetSolidWorksVisibility() 
    If Not swApp.Visible Then swApp.Visible = True 
    If Not swApp.FrameState = SwConst.swWindowState_e.swWindowMaximized Then swApp.FrameState = SwConst.swWindowState_e.swWindowMaximized 
End Sub 
0



यह beginers के लिए है ....
मुझे लगता है कि चाहे Solidworks जाँच करने के लिए कई तरह से स्थापित किया गया है कर रहे हैं के साथ SolidWorks के उपकरण या नहीं, लेकिन मेरे परिप्रेक्ष्य के अनुसार जब सॉलिडवर्क्स स्थापित किया गया है तो यह पंजीकरण में कुछ फ़ोल्डर्स बनाता है।

बस इस चरणों यह जांचने के लिए कि में

ओपन रन
प्रकार regedit का पालन करें ... और पर क्लिक करके प्रेस दर्ज
'उपयोगकर्ता अभिगम नियंत्रण' अनुमति हाँ HKEY_LOCAL_MACHINE के तहत

जाओ ->सॉफ्टवेयर

अब जाँच वहाँ है उपलब्ध है Solidwork फ़ोल्डर प्रविष्टि या नहीं
फ़ोल्डर solidworks स्थापित पाया तो अन्यथा नहीं ..!

उम्मीद है कि इससे मदद मिलेगी!

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