منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : سؤال بخصوص DOEVENTS ومشكله بالكود
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم
لدي كود اقوم بالضغط علي زر في صفحة ويب هذا الزر لادخال رابط الصورة لدي
اريد بمجد ان تظهر النافذه الخاصة بالصور يتم وضع الكود تلقائي
هذا كودي
مرات يشتغل ومرات لا يتم وضع الرابط في النافذه
PHP كود :
 My.Computer.Clipboard.Clear()
 
       My.Computer.Clipboard.SetText(path.PHOTO_1.Text)
 
       WebBrowser2.Document.GetElementById("File1").InvokeMember("click")

 
       Application.DoEvents()
 
     
        Dim hwnd2 
As IntPtr FindWindow(Nothing"Choose File to Upload")
 
       If hwnd2 IntPtr.Zero False Then
            System
.Windows.Forms.SendKeys.SendWait("^%(b)")
 
       End If

 
       ' file 2 upload ////////////////
        If path.PHOTO_2.Text = "" Then
            GoTo SaveNow
        Else

        
            My.Computer.Clipboard.Clear()
            My.Computer.Clipboard.SetText(path.PHOTO_2.Text)
            WebBrowser2.Document.GetElementById("File2").InvokeMember("click")
        
       
            Dim hwndx As IntPtr = FindWindow(Nothing, "Choose File to Upload")
            If hwndx = IntPtr.Zero = False Then
                System.Windows.Forms.SendKeys.SendWait("^%(x)")
            End If 
وعليكم السلام ورحمة الله وبركاته

عليك استخدام الكود كالتالى
كود :
   Private Async Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       My.Computer.Clipboard.Clear()
       My.Computer.Clipboard.SetText(Path.PHOTO_1.Text)
       Await WebBrowser2.Document.GetElementById("File1").InvokeMember("click")
       Dim hwnd2 As IntPtr = FindWindow(Nothing, "Choose File to Upload")
       If hwnd2 = IntPtr.Zero = False Then
           System.Windows.Forms.SendKeys.SendWait("^%(b)")
       End If
   End Sub

لاحظ كلمة Await قبل كلمة WebBrowser2
وكلذلك كلمة Async فى سطر كود الحدث قبل كلمة Sub

تحياتى لك
وتمنياتى لك التوفيق
جزيت خيرا اخي الفاضل علي مساعدتك
انا اقوم اولا بتحميل بعض البيانات داخل الفورم عند اكتمال تحميل البروزر ثم اقوم بارفاق صورة

انا استخدم الكود المعدل من قبلك داخل تايمر
 الان يظهر لدي خطأ عند محاولة تنفيذ هذا الكود
the application is in break mode
انا استخدم فيجوال ستوديو 2015
لى ولك وللجميع بامر الله

بخصوص هذه الرسالة
لكونك تستخدم الكود داخل الـ Timer
ابسط شئ ممكن اقوله تخيل كده
انك كل ثانية اذا كان الوقت محدد 1000 
بتطلب انه يقوم بعملية الـ click

وهذا خطاء
اذا كنت تريد ان تضع الكود فى المكان 
بحيث تلقائي يقوم بتنفيذ هذا الكود 
ضعه فى حدث WebBrowser2 الخاص بـ DocumentCompleted
بحيث بعد انتهاء من فتح الصفحة للرابط المدرج فى اللود مثلاً

سيقوم بعد ذلك بتنفيذ هذا الكود

تحياتى لك
وتمنياتى لك التوفيق
حاضر يااخي اسال الله تيسيرا لكل امورك
اللهم امين يارب العالمين
لى ولك وللجميع بامر الله

تحياتى لك
وتمنياتى لك التوفيق