تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] كيفية جلب برامج التنقيح من اى جهاز لو موجودة؟
#1
انا فاكر انى شفت قبل كدا كلاس او فنكشن كان بيتحقق اولا اذا كان فيه برنامج انتى فيرس شغال فى الجهاز ويظهر اسمه
ازاى بدل ما اعرف الانتى فيرس
اعرف اذا كان فى برامج تنقيح
مثل dnspy وريفليكتور
بس متقليش عن طريق اسم العملية
لان صعب اعمل على كل اسماء برامج التنقيح
اكيد فى كلاس او فنكشن بيعمل كدا
الرد
تم الشكر بواسطة:
#2
يا مسعد,
الافضل هو فحص مسجل النظام عن البرامج التي تريدها و كون البرامج التي تريد فحصها بعدد غير معلوم .
انا اقترح عليك طريقة ان تقوم بالفحص في العقدة التالية
HKEY-LOCAL_MACHINE_SOFTWARE_MICROSOFT_WINDOWS_CurrentVersion_Unistall
لان غالبية البرامج يكون لديها عملية Unistall في هذه العقدة او المجلد يمكنك البحث عما تريد في مكان واحد
بكل الاحوال حتى لا اطيل عليك هذه دالة بثلاث طرق اختر ما يناسبك منها


PHP كود :
   Public Shared Function IsApplictionInstalled(p_name As String) As Boolean
        Dim displayName 
As String
        Dim key 
As RegistryKey

        
' search in: CurrentUser
        key = Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall")
        For Each keyName As [String] In key.GetSubKeyNames()
            Dim subkey As RegistryKey = key.OpenSubKey(keyName)
            displayName = TryCast(subkey.GetValue("DisplayName"), String)
            If p_name.Equals(displayName, StringComparison.OrdinalIgnoreCase) = True Then
                Return True
            End If
        Next

        ' 
search inLocalMachine_32
        key 
Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall")
 
       For Each keyName As [StringIn key.GetSubKeyNames()
 
           Dim subkey As RegistryKey key.OpenSubKey(keyName)
 
           displayName TryCast(subkey.GetValue("DisplayName"), String)
 
           If p_name.Equals(displayNameStringComparison.OrdinalIgnoreCase) = True Then
                Return True
            End 
If
 
       Next

        
' search in: LocalMachine_64
        key = Registry.LocalMachine.OpenSubKey("SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall")
        For Each keyName As [String] In key.GetSubKeyNames()
            Dim subkey As RegistryKey = key.OpenSubKey(keyName)
            displayName = TryCast(subkey.GetValue("DisplayName"), String)
            If p_name.Equals(displayName, StringComparison.OrdinalIgnoreCase) = True Then
                Return True
            End If
        Next

        ' 
NOT FOUND
        Return False
    End 
Function 

و الافضل ان تكون البرامج التي تريد فحصها (البحث عنها) ضمن مصفوفة .
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد
تم الشكر بواسطة: الماجيك مسعد , sendbad100 , sendbad100
#3
(02-02-17, 06:04 PM)ابو ليلى كتب : يا مسعد,
الافضل هو فحص مسجل النظام عن البرامج التي تريدها و كون البرامج التي تريد فحصها بعدد غير معلوم .
انا اقترح عليك طريقة ان تقوم بالفحص في العقدة التالية
HKEY-LOCAL_MACHINE_SOFTWARE_MICROSOFT_WINDOWS_CurrentVersion_Unistall
لان غالبية البرامج يكون لديها عملية Unistall في هذه العقدة او المجلد يمكنك البحث عما تريد في مكان واحد
بكل الاحوال حتى لا اطيل عليك هذه دالة بثلاث طرق اختر ما يناسبك منها


PHP كود :
   Public Shared Function IsApplictionInstalled(p_name As String) As Boolean
        Dim displayName 
As String
        Dim key 
As RegistryKey

        
' search in: CurrentUser
        key = Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall")
        For Each keyName As [String] In key.GetSubKeyNames()
            Dim subkey As RegistryKey = key.OpenSubKey(keyName)
            displayName = TryCast(subkey.GetValue("DisplayName"), String)
            If p_name.Equals(displayName, StringComparison.OrdinalIgnoreCase) = True Then
                Return True
            End If
        Next

        ' 
search inLocalMachine_32
        key 
Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall")
 
       For Each keyName As [StringIn key.GetSubKeyNames()
 
           Dim subkey As RegistryKey key.OpenSubKey(keyName)
 
           displayName TryCast(subkey.GetValue("DisplayName"), String)
 
           If p_name.Equals(displayNameStringComparison.OrdinalIgnoreCase) = True Then
                Return True
            End 
If
 
       Next

        
' search in: LocalMachine_64
        key = Registry.LocalMachine.OpenSubKey("SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall")
        For Each keyName As [String] In key.GetSubKeyNames()
            Dim subkey As RegistryKey = key.OpenSubKey(keyName)
            displayName = TryCast(subkey.GetValue("DisplayName"), String)
            If p_name.Equals(displayName, StringComparison.OrdinalIgnoreCase) = True Then
                Return True
            End If
        Next

        ' 
NOT FOUND
        Return False
    End 
Function 

و الافضل ان تكون البرامج التي تريد فحصها (البحث عنها) ضمن مصفوفة .

ابو ليلى كيفك يا غالى يارب تكون بخير

نعم اعلم كيفية جلبهم

ولكن انا اقصد فنكشن جاهز بدلا من اكتب كل اسمائهم + انى فى برامج منهم لا اعرف اسمها

والاهم ان معظمهم مش بيختاج تثبيت

وكمان معظم الى بيستخدمهم بيحفظهم فى فولدر خاص وليس مثل باقى البرامج فى C
الرد
تم الشكر بواسطة: ابو ليلى
#4
الحمد لله انا بخير حفظك الله و رعاك 
للاسف لا اتوقع انه يمكنك ذلك لانك امام طرق و برامج كثيرة و بدل من البحث عن البرامج شفر كودك و احميه و ريح راسك من هذه البرامج.
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد
تم الشكر بواسطة:
#5
(02-02-17, 06:44 PM)ابو ليلى كتب : الحمد لله انا بخير حفظك الله و رعاك 
للاسف لا اتوقع انه يمكنك ذلك لانك امام طرق و برامج كثيرة و بدل من البحث عن البرامج شفر كودك و احميه و ريح راسك من هذه البرامج.

ههههه اكيد عملت كدا ولكن كسروه وعملوا له كراك لذلك ببخث عن هذا الطلب ليساعدنى فى الحماية اكثر
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] مشكلة في الكود في كيفية البحث داخل الداتا جريد من خلال صندوق نصي ؟ dametucorazon 3 125 أمس, 11:27 AM
آخر رد: elgokr
  كيفية التعامل عند حفظ سطر بقيمة فارغة وظهور رسالة خطأ؟ [ تم الحل ] Hazem1 2 79 أمس, 11:23 AM
آخر رد: elgokr
  كيفية عمل كشف حساب الخزينة لجرد النقدية ABDELLAH20181 22 621 21-09-18, 03:29 PM
آخر رد: ABDELLAH20181
  كيفية عرض التاريخ الهجري المتألق9 14 264 18-09-18, 01:38 PM
آخر رد: المتألق9
Exclamation [VB.NET] طلب :- كيفية التعامل مع الكوكيز DK-x 3 84 18-09-18, 12:46 PM
آخر رد: elgokr
Exclamation [سؤال] كيفية التعامل مع قاعدة البيانات DK-x 3 78 13-09-18, 05:03 PM
آخر رد: elgokr
  [VB.NET] كيفية جعل عملية الحذف مثلا تتزامن مع اداة Progreese Bar larbihamri 1 101 10-09-18, 11:40 AM
آخر رد: 911
  طلب برامج صغيرة مرحة للاطفال mostafanagy 2 109 20-08-18, 03:14 AM
آخر رد: وعد مولود
  سؤال عن كيفية عمل شرط في الكريستال ريبورت ُEmam 10 418 13-08-18, 05:50 PM
آخر رد: ُEmam
  نقل قاعدة البيانات الى جهاز آخر بدون تثبيت SQL Server Management أسامة السالمي 10 706 28-07-18, 03:39 AM
آخر رد: dametucorazon

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم