حتى زر انتر مافيه مشكلة انك تطلق الزر لكن المشكلة متى تطلق الزر؟ بمعنى تعمل مراقبة على العملية الجارية وهي التنصيب
جرب مراقبة ال Process لملف تنصيب واحد وحاول تشوف الفرق بين عملية التنصيب الى الاكتمال ان شاء الله تصل الى نتيجة
لكن قبل ماتجرب اول شي جرب الضغط على الزر وتأكد اذا ينجح الامر
بعد انتهاء عملية التنصيب اعمل هالتجربة وهي هالكود يضغط على زر Close او لا
اذا حليت هالمشكلة تبقى فقط عملية المراقبة وان شاء الله نقدر نتلاعب بالكود بدون مانحتاج المراقبة
جرب مراقبة ال Process لملف تنصيب واحد وحاول تشوف الفرق بين عملية التنصيب الى الاكتمال ان شاء الله تصل الى نتيجة
لكن قبل ماتجرب اول شي جرب الضغط على الزر وتأكد اذا ينجح الامر
بعد انتهاء عملية التنصيب اعمل هالتجربة وهي هالكود يضغط على زر Close او لا
PHP كود :
Imports System.Runtime.InteropServices
Public Class Form1
<DllImport("user32.dll", CharSet:=CharSet.Auto, EntryPoint:="FindWindow")> _
Private Shared Function FindWindow(ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr
End Function
<DllImport("user32.dll", SetLastError:=True, CharSet:=CharSet.Auto)> _
Private Shared Function FindWindowEx(ByVal parentHandle As IntPtr, ByVal childAfter As IntPtr, ByVal lclassName As String, ByVal windowTitle As String) As IntPtr
End Function
<DllImport("user32.dll", EntryPoint:="SendMessage")> _
Private Shared Function SendMessage(ByVal hwnd As IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As IntPtr
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim hwnd = FindWindow(Nothing, "Download and Install Updates")
If hwnd <> IntPtr.Zero Then
Dim btn = FindWindowEx(hwnd, IntPtr.Zero, "Button", "Close")
If btn <> IntPtr.Zero Then
SendMessage(btn, &HF5, 0, 0)
Else
MsgBox("لم يتم ايجاد الزر")
End If
Else
MsgBox("لم يتم ايجاد التحديث")
End If
End Sub
End Class
اذا حليت هالمشكلة تبقى فقط عملية المراقبة وان شاء الله نقدر نتلاعب بالكود بدون مانحتاج المراقبة

