تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] تعديل في الكود
#1
PHP كود :
For Each a As Process In Process.GetProcesses
            Dim x 
As String a.MainWindowTitle
            x 
x.ToLower
            
If x.Contains("i") Or x.Contains("r") Or x.Contains("t"Then
                a
.Kill()
                
MsgBox("")
            
End If
        
Next 


اتمني اجد طريقة لاضع فيها عدد كبير من الكلمات لاني لو وضعت

ذلك من خلال تكرار Or x.Contains يصبح الكود يغلق المتصفح او دون وجود

الكلمة الدالة تلقائي Angry
[/align]

الرد }}}
تم الشكر بواسطة:
#2
يعني انت تبي تغلق المتصفح لو كان شغال ؟؟

استخدم اسم البروسس بدل وضع حروف عشوائية

فإسم البروسس ثابت ولايختلف بين مستخدم واخر

PHP كود :
For Each p As Process In Process.GetProcesses
            Dim CurrentProcessName 
As String p.ProcessName.ToLower()
            If 
CurrentProcessName "firefox" Or CurrentProcessName "chrome" Or CurrentProcessName "iexplorer" Then
                p
.Kill()
            
End If
        
Next 

الكود سيقوم باغلاق الفايرفوكس + قوقل كروم + انترنت اكسبلورر

لو سألتني من وين جبت اسماء البروسس ، سأقول لك يمكنك الحصول عليها من Task Manger

الرد }}}
تم الشكر بواسطة: m0075 , سعود , Aly El-Haddad
#3
بارك الله فيك اخي انت لم تفهم قصدي

انا اريد ان اغلق المتصفح في حالة وجد في شرطيه كلمة محددة مثلا

[php]For Each a As Process In Process.GetProcesses
Dim x As String = a.MainWindowTitle
x = x.ToLower
If x.Contains("فيجول بيسك لكل العرب ") Then
a.Kill()
MsgBox("")
End If
Next [code]

الان لو وجد في شريط المصتفح العنوان للصفحة فيجول بيسك لكل العرب سيغلق المصتفح والا لن يغلقه اتمني وصلت الفكرة
[/align]

الرد }}}
تم الشكر بواسطة:
#4
(28-12-13, 10:24 AM)m0075 كتب : بارك الله فيك اخي انت لم تفهم قصدي

انا اريد ان اغلق المتصفح في حالة وجد في شرطيه كلمة محددة مثلا

[php]For Each a As Process In Process.GetProcesses
Dim x As String = a.MainWindowTitle
x = x.ToLower
If x.Contains("فيجول بيسك لكل العرب ") Then
a.Kill()
MsgBox("")
End If
Next [code]

الان لو وجد في شريط المصتفح العنوان للصفحة فيجول بيسك لكل العرب سيغلق المصتفح والا لن يغلقه اتمني وصلت الفكرة

اخي من بداية الموضوع انا موفاهم ويش تقصد بالضبط

هل تقصد انك تريد اضافة مجموعة كلمات ليتم مقارنتها بدل استعمال Or في كل مرة ؟؟
الرد }}}
تم الشكر بواسطة:
#5
السلام عليكم، الكود التالي يقوم بجلب عناوين جميع القوائم (ليس القائمة الأساسية من كل تطبيق فقط) ثم مطابقة عناوينها مع قائمة أخرى من الكلمات و إذا تطابقت يغلق التطبيق الذي به هذه النافذة (طبعاً الكود يعمل عند الضغط على الزر Button1)

PHP كود :
Imports System.Runtime.InteropServices

Public Class Form1

    
<DllImport("user32.dll"EntryPoint:="GetWindowText")> _
    
Private Shared Function GetWindowText(ByVal hwnd As IntPtrByVal lpString As System.Text.StringBuilderByVal cch As Int32) As Int32
    End 
Function

    <
DllImport("user32.dll"EntryPoint:="GetWindowTextLength")> _
    
Private Shared Function GetWindowTextLength(ByVal hwnd As IntPtr) As Int32
    End 
Function

    <
DllImport("user32.dll"EntryPoint:="EnumWindows")> _
    
Private Shared Function EnumWindows(ByVal Adress As CallBackByVal lParam As Integer) As Integer
    End 
Function

    <
DllImport("user32.dll"EntryPoint:="GetWindowThreadProcessId")> _
    
Private Shared Function GetWindowThreadProcessId(ByVal hWnd As IntPtr, <Out()> ByRef lpdwProcessId As UInteger) As UInteger
    End 
Function

    Private 
Delegate Function CallBack(ByVal hWnd As IntPtrByVal lParam As Integer) As Boolean

    
Private Function Enumerator(ByVal hWnd As IntPtrByVal lParam As Integer) As Boolean
        windowTexts
.Add(hWndGetText(hWnd))
        Return 
True
    End 
Function

    Private Function 
GetText(ByVal handle As IntPtr) As String
        
If handle.ToInt32() <= 0 Then Return Nothing : Exit Function
        
Dim length As Integer GetWindowTextLength(handle)
        If 
length 0 Then Return String.Empty : Exit Function
        
Dim SB As New System.Text.StringBuilder(length 1)
        
GetWindowText(handleSBSB.Capacity)
        Return 
SB.ToString()
    
End Function

    Private 
Sub RefreshWindowTexts()
        
windowTexts.Clear()
        
EnumWindows(AddressOf EnumeratorNothing)
    
End Sub

    
Private windowTexts As New Dictionary(Of IntPtrString)

    Private 
Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Button1.Click
        Dim forbiddenWords 
As New List(Of String)({"facebook""yahoo"})
        
RefreshWindowTexts()
        
Dim keys As IntPtr() = New IntPtr(windowTexts.Keys.Count 1) {}
        
windowTexts.Keys.CopyTo(keys0)
        For 
Each ptr As IntPtr In keys
            
For As Integer 0 To forbiddenWords.Count 1
                
If windowTexts(ptr).ToLower().Contains(forbiddenWords(I).ToLower()) Then
                    Dim pid 
As Integer 0
                    GetWindowThreadProcessId
(ptrpid)
                    
Process.GetProcessById(pid).Kill()
                
End If
            
Next
        Next
    End Sub
End 
Class 
الرد }}}
تم الشكر بواسطة: سعود , m0075 , الشاكي لله
#6
بارك الله فيك اخي Aly El-Haddad هل استطيع اضافة 30 كلمة ويعمل الكود بشكل سليم ؟؟؟ ساجرب الان

(28-12-13, 10:50 AM)الشاكي لله كتب :
(28-12-13, 10:24 AM)m0075 كتب : بارك الله فيك اخي انت لم تفهم قصدي

انا اريد ان اغلق المتصفح في حالة وجد في شرطيه كلمة محددة مثلا

[php]For Each a As Process In Process.GetProcesses
Dim x As String = a.MainWindowTitle
x = x.ToLower
If x.Contains("فيجول بيسك لكل العرب ") Then
a.Kill()
MsgBox("")
End If
Next [code]

الان لو وجد في شريط المصتفح العنوان للصفحة فيجول بيسك لكل العرب سيغلق المصتفح والا لن يغلقه اتمني وصلت الفكرة

اخي من بداية الموضوع انا موفاهم ويش تقصد بالضبط

هل تقصد انك تريد اضافة مجموعة كلمات ليتم مقارنتها بدل استعمال Or في كل مرة ؟؟

نعم اريد استخدام مجموعات كلمات يتم فحصها في حالة وجدها البرنامج في ريط التصفح

اغلق المتصفح ....
[/align]

الرد }}}
تم الشكر بواسطة:
#7
اخي Aly El-Haddad تظهر مشكلة بعد قتل العملية في متصفح internet explorer

صورة للتوضيح بارك الله فيك يا ريت الحل

[/align]

الرد }}}
تم الشكر بواسطة:
#8
PHP كود :
Dim forbiddenWords As New List(Of String)({"facebook""yahoo"})
        
RefreshWindowTexts()
        
Dim keys As IntPtr() = New IntPtr(windowTexts.Keys.Count 1) {}
        
windowTexts.Keys.CopyTo(keys0)
        
Dim pids As New List(Of Integer)
        For 
Each ptr As IntPtr In keys
            
For As Integer 0 To forbiddenWords.Count 1
                
If windowTexts(ptr).ToLower().Contains(forbiddenWords(I).ToLower()) Then
                    Dim pid 
As Integer 0
                    GetWindowThreadProcessId
(ptrpid)
                    If 
Not pids.Contains(pidThen
                        Process
.GetProcessById(pid).Kill()
                        
pids.Add(pid)
                    
End If
                
End If
            
Next
        Next 
الرد }}}
تم الشكر بواسطة: m0075
#9
(29-12-13, 09:34 PM)Aly El-Haddad كتب :
PHP كود :
Dim forbiddenWords As New List(Of String)({"facebook""yahoo"})
        
RefreshWindowTexts()
        
Dim keys As IntPtr() = New IntPtr(windowTexts.Keys.Count 1) {}
        
windowTexts.Keys.CopyTo(keys0)
        
Dim pids As New List(Of Integer)
        For 
Each ptr As IntPtr In keys
            
For As Integer 0 To forbiddenWords.Count 1
                
If windowTexts(ptr).ToLower().Contains(forbiddenWords(I).ToLower()) Then
                    Dim pid 
As Integer 0
                    GetWindowThreadProcessId
(ptrpid)
                    If 
Not pids.Contains(pidThen
                        Process
.GetProcessById(pid).Kill()
                        
pids.Add(pid)
                    
End If
                
End If
            
Next
        Next 

جزاك الله الفردوس الاعلي اخي وبارك الله بيك وبعلمك
[/align]

الرد }}}
تم الشكر بواسطة: Aly El-Haddad


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  تعديل على فاتورة مبيعات خالد كامل1 4 69 26-03-24, 10:49 PM
آخر رد: خالد كامل1
  تعديل كود ارسال صورة الى الواتس new_programer 2 114 21-03-24, 10:07 PM
آخر رد: new_programer
  تعديل صب المجموع الكلي والمعدل والتقدير مصمم هاوي 3 131 19-03-24, 01:33 AM
آخر رد: مصمم هاوي
  تعديل طول حقل معين في جميع جداول القاعدة atefkhalf2004 1 97 09-03-24, 03:17 AM
آخر رد: atefkhalf2004
  تعديل بيانات عمود DataGridView دفعة واحدة مصمم هاوي 2 164 05-03-24, 08:27 PM
آخر رد: مصمم هاوي
  ممكن حل المشكلة فى الكود التالي - من مشاركة استاذنا القدير / عبدالله الدوسري new_programer 4 169 02-03-24, 07:36 PM
آخر رد: new_programer
  ماهو حل هذا الخطأ في الكود melad2002 7 264 25-02-24, 12:25 AM
آخر رد: justforit
  كيفية انشاء سكريبت لقاعدة بيانات من خلال الكود heem1986 1 194 20-02-24, 12:00 AM
آخر رد: Kamil
  [VB.NET] أرغب فى استخدام هذا الكود بالتحديد على الإصدار 10 AmeenRashed 3 206 19-01-24, 12:42 PM
آخر رد: Taha Okla
  ممكن تعديل في كود التفقيط للارقام melad2002 2 334 01-01-24, 08:47 PM
آخر رد: melad2002

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


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