Hem 32-bit hem de 64-bit işletim sisteminde çalışan aC# uygulamasına sahibim. Uygulamamda, Solidworks'ün bilgisayarda yüklü olup olmadığını nasıl kontrol edebilirim. Kayıt defteri anahtarını okuyarak kontrol edebiliriz. ben hem 32-bit hem de 64-bit için yolum. Bunu kontrol etmek için başka yollar varsa bana haber verin.Çek Solidworks yüklü mü?
5
A
cevap
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
aşağıdaki şekilde WMI kullanabilirsiniz uygulama yüklüyse SolidWorks'ü başlamak gerekir mi? Eğer öyleyse, ben bütün Bağımsız başlar (non eklenti) SolidWorks araçları Ben yüklü olup olmadığı Solidworks kontrol etmenin birçok yolu olduğunu düşünüyorum
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
Bu beginers içindir
0
.... ile ya da değil, fakat Solidworks kurulduğunda perspektifime göre, kayıtta bazı klasörler oluşturur.
Sadece ki ... Bu adımlar kontrol etmek
Açık koşmak
Tip regedit takip edip tıklayarak
'Kullanıcı erişim kontrolü' İzin Enter tuşuna basın Evet
HKEY_LOCAL_MACHINE ->SOFTWARE
Şimdi klasör solidworks aksi değil yüklenmiş bulundu Eğer orada Solidwork
klasör girişi mevcuttur mı, değil
kontrol ..!
Bu yardımcı olacaktır umarım!
Uygun şekilde atıldığından emin olmak için ManagementObjectSearcher ve ManagementObjectCollection çevresindeki ifadeleri 'kullanıyorum'. – SwDevMan81
Ürün kurulduktan sonra "foreach" döngüsünü kırıp "rv = true" yerine "return true" (rv 'declaration gereksiz hale gelir) – alex