صممت برنامجاً لقراءة صوتيات بامتداد ram ، mp3 ، ولا بد لكي يعمل أن يكون برنامج Real Player مثبتاً في جهاز المستخدم .
فهل من أحد يفيدني كيف أعرف ما إذا كان البرنامج مثبتاً لدى المستخدم أم لا ؟
وبارك الله في جهود الجميع
صممت برنامجاً لقراءة صوتيات بامتداد ram ، mp3 ، ولا بد لكي يعمل أن يكون برنامج Real Player مثبتاً في جهاز المستخدم .
فهل من أحد يفيدني كيف أعرف ما إذا كان البرنامج مثبتاً لدى المستخدم أم لا ؟
وبارك الله في جهود الجميع
يوجد Key في الريجستري (لا أعلمه مكانه) يحوي Values بأسماء البرامج المثبته في قائمة Add/Remove يمكن البحث عن القيمة التي تحتوي علي الـ Value التي تحوي اسم برنامج الـ RealPlayer فان وجدتها يبقي البرنامج موجود وان لم تجد القيمه يبقي البرنامج غير موجود B)
ويفضل أن تقوم بعمل دالة تعود بقيمة من النوع Boolean حتي تسهل عليك كتابة الكود ,اي خدمة ;)
الحاجه الوحيده اللي ناقصاك هي مكان الـ Key في الريجستري ؟؟؟ يا ريت حد يساعد يا جماعه ,,,
هدور عليه و أجبهولك :)
المكان إلي يقصده حازم في فكرته هو :
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\
و ربنه يوفقك :)
عمرو عيسي
الأخوين الكريمين حازم و R0OT بارك الله فيكما على ردكما على سؤالي ، وأحمد الله إذ نجحت الطريقة التي أرشدتماني إليها .
وإتماماً للفائدة فالكود الذي يحدد ما إذا كان برنامج Real Player مثبتاً هو التالي :
Public Enum ERegistryClassConstants
HKEY_CLASSES_ROOT = &H80000000
HKEY_CURRENT_USER = &H80000001
HKEY_LOCAL_MACHINE = &H80000002
HKEY_USERS = &H80000003
End Enum
'Define severity codes
Private Const ERROR_SUCCESS = 0&
Private Const ERROR_ACCESS_DENIED = 5
Private Const ERROR_INVALID_DATA = 13&
Private Const ERROR_MORE_DATA = 234 ' dderror
Private Const ERROR_NO_MORE_ITEMS = 259
Private Declare Function RegOpenKeyEx Lib "advapi32" Alias "RegOpenKeyExA" _
(ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, _
ByVal samDesired As Long, phkResult As Long) As Long
Private Declare Function RegCloseKey Lib "advapi32" (ByVal hKey As Long) As Long
Private m_hClassKey As Long
Private m_sSectionKey As String
Public Property Get KeyExists() As Boolean
'KeyExists = bCheckKeyExists( _
' m_hClassKey, _
' m_sSectionKey _
' )
Dim hKey As Long
If RegOpenKeyEx(m_hClassKey, m_sSectionKey, 0, 1, hKey) = ERROR_SUCCESS Then
KeyExists = True
RegCloseKey hKey
Else
KeyExists = False
End If
End Property
Sub main()
m_hClassKey = HKEY_LOCAL_MACHINE
m_sSectionKey = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\RealPlayer 6.0"
If KeyExists Then
MsgBox "Real Player Found"
Else
MsgBox "Real Player Not Found"
End If
End Sub
هذا الموضوع مغلق.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…