بسم الله الرحمن الرحيم
هل من كود لمعرفه نوع الانتي فيرس ؟؟؟
وهل من كود لمعرفه سرعه الرامات؟؟؟
افيديوني افادكم الله
تحياتي..................
فؤاد سعد
بسم الله الرحمن الرحيم
هل من كود لمعرفه نوع الانتي فيرس ؟؟؟
وهل من كود لمعرفه سرعه الرامات؟؟؟
افيديوني افادكم الله
تحياتي..................
فؤاد سعد
آآآآآآه , يبقى كودي لم ينفع بقى :lol:
بالنسبة للرامات جرب :
اقتباسIf A is success in life, then A equals x plus y plus z. Work is x; y is play; and z is keeping your mouth shut
Albert Einstein
شكرا يا قمر هشوف وارد عليك
جابلي اراقم كتيره وغير مرتبه ؟؟؟
انا كنت عاوز سرعه الرامات بالكيلو بايت
على العموم شكرا لك على افادتي
أنا وضعت إيضاح لكل رقم , جرب
اقتباسIf A is success in life, then A equals x plus y plus z. Work is x; y is play; and z is keeping your mouth shut
Albert Einstein
بالنسبة للشطر الأول من السؤال لا أعرف كيف هي أنواع الAntiVirus
ممكن تقصد واحد مختص Internet Security و آخر غير ذلك ؟
لكن كنت أفكر في فرضية أن كل مكافحات الفيروسات أو جلها (التي أعرفها يعني ) تعمل كخدمة ويندوز Windows Service
وطبعا أي مكافح فيروسات على الأقل يكون في وصفه كلمة AntiVirus أليس كذلك ؟
واعتمادا على هذه الفرضية (ممكن تكون خاطئة ) ادرجت هذا السكريبت الذي يبحث في الخدمات المثبيتة على الجهاز ويتأكد من أنه توجد خدمة تحتوي على وصف فيه كلمة AntiVirus
Function HAntiVirus() As String
بالتوفيق ان شاءء الله
وكل عام وانتم بخير
جزاك الله خيرا على الكود أخي Dream
اقتباسIf A is success in life, then A equals x plus y plus z. Work is x; y is play; and z is keeping your mouth shut
Albert Einstein
شكرا اخي دريم وشكرا يا علاء على المجهود
بسم الله والصلاة والسلام على رسول الله ...
أخي الكريم هذه الأكواد قمت بإضافتها إلى برنامجي RAT لجلب معلومات جهاز الضحية ..
أرجو أنك أيضاً تقوم بعمل برنامج مماثل :)
بالنسبة لجدران الحماية لا يشترط أنها تحمل Antivirus فمثلاُ الكاسبر يكتب Kaspersky Internet Security 7.0 :) أو Kaspersky Anti-Hacker أو حسب البرنامج المثبت ...
الحل مثل ما عمل الأخ Dreamnet ولكن عدم إستخدام Win32_Service بل إستخدام SecurityCenter
وبهذا الكود كدالة سيكون على الشكل التالي :
Public Function GetFWAV() As String
On Error Resume Next
Dim colItems As Object
Dim objItem As Object
Dim objWMIService As Object
Set objWMIService = GetObject("winmgmts:\\.\root\SecurityCenter")
Set colItems = objWMIService.ExecQuery("Select * from FirewallProduct", , 48)
Dim tmp As String, endt As String
tmp = "-"
For Each objItem In colItems
tmp = objItem.CompanyName & " " & objItem.DisplayName & " (Version: " & objItem.versionnumber & ")"
Next
endt = tmp
tmp = ""
Set colItems = objWMIService.ExecQuery("Select * from AntiVirusProduct", , 48)
For Each objItem In colItems
tmp = objItem.CompanyName & " " & objItem.DisplayName & " (Version: " & objItem.versionnumber & ")"
Next
GetFWAV = endt & vbCrLf & tmp
End Functionوعند إستدعاء الدالة بأي شكل فإن الناتج سيكون على شكل:
شركة البرنامج + اسم برنامج الجدار الناري + الإصدار أو " - " إذا لم يوجد
شركة البرنامج + اسم برنامج الحماية من الفيروسات + الإصدار أو " - " إذا لم يوجد
-------------------------------------------------------
بالنسبة للرام: إستعمل الكود التالي:
Private Declare Function GlobalMemoryStatusEx Lib "kernel32" (ByRef lpBuffer As MEMORYSTATUSEX) As Long Private Declare Sub RtlMoveMemory Lib "kernel32" (Destination As Any, Source As Any, ByVal Length As Long) Private Type LARGE_INTEGER: dwLow As Long: dwHigh As Long: End Type Private Type MEMORYSTATUSEX dwLength As Long dwMemoryLoad As Long ullTotalPhys As LARGE_INTEGER ullAvailPhys As LARGE_INTEGER ullTotalPageFile As LARGE_INTEGER ullAvailPageFile As LARGE_INTEGER ullTotalVirtual As LARGE_INTEGER ullAvailVirtual As LARGE_INTEGER ullAvailExtendedVirtual As LARGE_INTEGER End Type Function MemoryAvailable() As Currency Dim MemStat As MEMORYSTATUSEX Dim TotalPhys As Currency On Error Resume Next MemStat.dwLength = Len(MemStat) GlobalMemoryStatusEx MemStat TotalPhys = LargeIntToCurrency(MemStat.ullTotalPhys) MemoryAvailable = TotalPhys End Function Private Function LargeIntToCurrency(liInput As LARGE_INTEGER) As Currency On Error Resume Next RtlMoveMemory LargeIntToCurrency, liInput, LenB(liInput) LargeIntToCurrency = LargeIntToCurrency * 10000 End Function
والنتيجة بعد إستدعاء الدالة سيكون على الشكل التالي: (بالبايت)
1064808448 أو على حسب الرام الموجود وبعد ذلك نستخدم الدالة التالية للتحويل للصيغة المطلوبة
Private Declare Function StrFormatByteSizeA Lib "shlwapi" (ByVal dw As Long, ByVal pszBuf As String, ByRef cchBuf As Long) As String Private Function FormatKB(ByVal Amount As Long) As String Dim Buffer As String Dim result As String Buffer = Space$(255) result = StrFormatByteSizeA(Amount, Buffer, Len(Buffer)) If InStr(result, vbNullChar) > 1 Then FormatKB = Left$(result, InStr(result, vbNullChar) - 1) End Function
هذه الدالة للتحويل من عدد بايتات إلى قيمة مقروءة يعني من 2024 إلى 2 ميغا وهكذا
وعند إستدعائها مع الدالة السابقة على الشكل التالي:
FormatKB(CLng(MemoryAvailable))
سيصبح الناتج بهذا الشكل 0.99 غ.ب
آمل أنني وفقت في الرد على سؤالك والسلام عليكم ورحمة الله وبركاته ...
لقد جربت الكود الذي وضعته ولم يعمل لكن الكود الذي يستعمل الsecurity center اشتغل
ومادمنا بصدد الحديث عن الWMI يمكننا أيضا استعمالها في معرفة الMemory ومعرفة أيضا كم عدد الرامات المركبة بالداخل حتى
Dim mtt As Long
شكرا على الملاحظة أخي syntax_err
تسلم أخي الكريم على الإضافة ...
لو عندك الطريقة عشان معرفة الكائنات اللي تنشق من "winmgmts:\\" مثل السيكيوريتي سنتر وغيرها يا ريت لو تنشرها عشان نستفيد منها ..
وكمان بدل أن تقوم بإستخدام القسمة على 1048576 قم بإستعمال الدالة التي بالرد السابق فهي تقوم بالتحويل لشكل مقبول ..
تقبل مروري ...
شكرا
بالنسبة للWMI ربما يفيدك المثال الذي وضعته والموجود في توقيعي عن WMIcodeGenerator وهو قديم ولم أطور فيه شئ لكنه مفيد نوعا ما
الف الف شكر اخي الكريم سينتاكس على الاكواد الرائعه مثلك
هههههههههههههههه ناصح عرفت اني اريدها لتصميم برنامج هكر
تحياتي .......................
فؤاد سعد
شكرا اخي الكريم dreem
هذا الموضوع مغلق.