-
بدست آوردن GetElementById یک شی در web browser
سلام بر همگی
دوستان راهی هست که بشه در وب بروزر وقتی که روی یک شی کلیک می کنی مشخصه getelementbyid اون بدست بیاد . چون من الان هر کاری کردم نتونستم از طریق سورس این مشخصه رو پیدا کنم .
شی من یک دکمه هست که می خوام روی اون کلیک کنم.
این سورس وب مربوط به اون قسمت
<tdcolspan="2" align="left"><strong> </strong><br /></td>
</tr>
<tr>
<td> </td>
<td><inputtype="image" src="images/sendbt.png" /></td>
</tr>
</table>
</form>
<scriptlanguage=javascript>if((document.smsform.mobile.value)>1){var set=document.getElementById('mobile'); set.setAttribute('readonly');}else
{var set=document.getElementById('mobile');set.removeAttribute('readonly');
}
</script>
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
جستجو کنید تاپیک های زیادی در این موضوع هست
از این کد میتونی برای ارسال فرم استفاده کنید
WebBrowser1.Document.Forms(0).elements("v").Click
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
دستت درد نکنه به خاطر پاسخت
ولی اگه میشه خودت یه راهنمایی کن.
یا تاپیک معرفی کن
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام عليکم
دقيق منظورتون رو نفهميدم،
شما اگه از مرورگرهاي Opera و Chrome استفاده ميکنيد با راست کليک بر روي شيء مورد نظرتون و با انتخاب Inspect Element ميتونيد نام اون شيء و ديگر مشخصه ها رو به دست بياريد.
اگه به جواب نرسيديد بيشتر توضيح بديد.
موفق باشيد
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام . ممنون به خاطر پاسخ
منظورم که خیلی واضح . تو وب بروزر می خوام روی یک دکمه کلیک کنم ولی اون دکمه اسم نداره . می خواستم ببینم چطور میشه روی اون دکمه کلیک کرد.
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
از گوگل کروم هم استفاده کردم ولی با گزینه Inspect Element نتونستم اسم شی رو بدست بیارم
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
آدرس سايت مورد نظرتون رو بديد.
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
آدرس سایت رو نمیشه اینجا نوشت
کد html رو که اینجا گذاشتم
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام...
می تونید اول یه تکست باکس یا دکمه یا هر چیزی رو که element اون رو می دونی چیه از طریق فوکوس بری روش بعد با زدن دکمه Tab بری روی همون دکمه ای که element نداره و از طریق sendkeys روش کلیک کنید.
از طریق کد زیر هم می تونید فوکوس رو روی اون element ببرید.
x = WebBrowser1.Document.all("").focus()
موفق باشید...
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام
ببينيد اگه اون شيء نام نداره شما ميتونيد ازطريق ID رو اون کليک کنيد مثلا در انجمن VB6 اينطوري بايد روي دکمه ي "ايجاد تاپيک جديد" کليک کرد.
يعني اول focus ميره روي اون شيء و سپس با SendKeys رو اون کليک ميشه.
Private Sub Command1_Click()
On Error Resume Next
WebBrowser1.Document.getElementById("newthreadlink _top").focus
SendKeys "{enter}", True
End Sub
Private Sub Form_Load()
WebBrowser1.Navigate "https://barnamenevis.org/forumdisplay.php?43-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D8%AF%D8%B1-6-VB"
End Sub
موفق باشيد
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
در صفحه وبی که لازم دارم دارم فایل ها اتوماتیک آپلود شوند
یک آپلود فایل موجود است می خواهم آدرس مورد نظرم بعد از بارگداری صفحه در آپلودفایل انتخاب شود، بدون اینکه پنجره انتخاب فایل برای کاربر نمایش داده شود
باتشکر
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
نقل قول:
نوشته شده توسط
sa.ahmadzade
در صفحه وبی که لازم دارم دارم فایل ها اتوماتیک آپلود شوند
یک آپلود فایل موجود است می خواهم آدرس مورد نظرم بعد از بارگداری صفحه در آپلودفایل انتخاب شود، بدون اینکه پنجره انتخاب فایل برای کاربر نمایش داده شود
باتشکر
سلام عليکم
لطفا براي سوال خود تاپيک جداگانه اي در انجمن مخصوص آن ايجاد کنيد تا اساتيد بهتر راهنمايي کنند.
موفق باشيد
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
با سلام :
اون قسمتی از سورس که گذاشتین بعید میدونم مال اونجایی باشه که می خواین کلیک کنید یا حداقل ناقص گذاشتین. اگر می تونید URL صفحه را بگذارید .
1- برای کلیک کردن بر روی دکمه هایی که ID دارند می تونید از این استفاده کنید :
WebBrowser1.Document.All("Button ID").Click
2- اما بعضی از دکمه ها هستند ID ندارند ولی Name دارند برای کلیک بر روی دکمه هایی که فقط Name دارند می توانید از این استفاده کنید :
Dim targetinputname As String
targetinputname = "Button Name"
For n = 0 To WebBrowser1.Document.All.length - 1
If WebBrowser1.Document.All(n).tagName = "INPUT" Then
If WebBrowser1.Document.All(n).Name = targetinputname Then
WebBrowser1.Document.All(n).Click
Exit Sub
End If
End If
Next
targetinputname رو برابر اسم Button قرار دهید.
موفق باشید.
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
با تشکر از همگی .
چطور میشه فهمید که چه موقع وب بروزر صفحه رو به صورت کامل لود کرده ؟ رویداد ddcument complete وقتی که صفحه کامل لود نشده هم اجرا میشه.
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
نقل قول:
چطور میشه فهمید که چه موقع وب بروزر صفحه رو به صورت کامل لود کرده ؟ رویداد ddcument complete وقتی که صفحه کامل لود نشده هم اجرا میشه.
به اين صورت ميشه فهميد:
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
If (pDisp Is WebBrowser1.object) Then
Print "LOading Completed"
End If
End Sub
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
مممنون
یک سوال دیگه . وقتی که توی وب بروزر یک کادر پیام مثل msgbox خود وی بی باز میشه چطور میشه کاری کرد که برنامه خودش به صورت اتوماتیک اوکی رو بزنه؟
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
من خودم یه بار یه همچین مشکلی رو داشتم.
یه برنامه کمکی ساختم که وقتی اولی رو اجرا می کردم خودش برنامه کمکی رو اجرا می کید و چک می کرد هر وقت webbrowser پیغام می داد هندلشو بدست میاورد و OK می کرد.
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام علیکم
برای کلیک و هر عمل دیگری بر روی اشیائی که id و name ندارند میتوانیم از indexشون استفاده کنیم، برای مثال اگر در web-browser به گوگل وارد شده و متنی را تایپ کنیم، برای فشردن دکمه جستجو (اگه id,name نداشته باشه نهایتا از index برای ارسال کلیک استفاده می کنیم):
Private Sub Form_Load()
WebBrowser1.Navigate "http://google.com"
End Sub
Private Sub Command1_Click()
WebBrowser1.Document.Forms(0).elements(6).Click
End Sub
موفق باشید
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
دست شما درد نکنه . ولی این مشکلم حل شد . الان فقط مشکلم اوکی کردن پیغامی هست که توسط وب باز می شه.
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
نقل قول:
نوشته شده توسط
ho3ein.3ven
دست شما درد نکنه . ولی این مشکلم حل شد . الان فقط مشکلم اوکی کردن پیغامی هست که توسط وب باز می شه.
سلام عليکم
شما حتما دستوراتي که نوشتين يه مشکلي داره به خاطر همين پيغام ميده،در غير اينصورت همونطور که جناب just4froum فرمودند ميتونيد هندل اون رو به دست بياريد و روش OK کنيد.
در مورد به دست آوردن هندل جستجو کنيد قبلا در موردش بحث شده.
موفق باشيد
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
نه دستوراتی که نوشتم هیچ مشکلی نداره . پیغام از خود سایت داده میشه
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
همونطور که جناب just4forum هم فرمودند کدی مینویسیم منتظر نمایش یک پیام با عنوانی مشخص شود، و پس از آنکه پنجره روئیت شده فرم پنجره را انتخاب و دستور close به آن ارسال میکنیم
البته اگه آدرس یا کد خاصی را مدنظر دارید در صورت امکان آن را هم ضمیمه پست کنید تا سریعتر به نتیجه برسیم
موفق باشید
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام.ممنون از شما
خیلی پست های سایت رو گشتم ولی چیزی متوجه نشدم اگر ممکنه خودتون یه توضیح برام بدین.
عنوان کادر پیام message submitted successfully و متن پیام message submitted successfully و فقط یک گزینه داره که اونم ok هست.
با تشکر
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
با سلام :
چون دقیق پیغامو ندارم نمی تونم دقیق برات بنویسم ولی این باید کار کنه. اگر کار نکرد متن message submitted successfully رو دقیق با رعایت بزرگ و کوچکی حروف توی سورس درستش کن.
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Const BM_CLICK = &HF5
Private Sub Form_Load()
Timer.Enabled = True
Timer.Interval = 100
End Sub
Private Sub Timer_Timer()
Dim messageHandle As Long
Dim OKHandle As Long
messageHandle = FindWindow(vbNullString, "Message Submitted Successfully")
OKHandle = FindWindowEx(messageHandle, 0, vbNullString, "OK")
If OKHandle <> 0 Then
SendMessage OKHandle, BM_CLICK, 0, 0
End If
End Sub
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
نقل قول:
نوشته شده توسط
just4froum
با سلام :
چون دقیق پیغامو ندارم نمی تونم دقیق برات بنویسم ولی این باید کار کنه. اگر کار نکرد متن message submitted successfully رو دقیق با رعایت بزرگ و کوچکی حروف توی سورس درستش کن.
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Const BM_CLICK = &HF5
Private Sub Form_Load()
Timer.Enabled = True
Timer.Interval = 100
End Sub
Private Sub Timer_Timer()
Dim messageHandle As Long
Dim OKHandle As Long
messageHandle = FindWindow(vbNullString, "Message Submitted Successfully")
OKHandle = FindWindowEx(messageHandle, 0, vbNullString, "OK")
If OKHandle <> 0 Then
SendMessage OKHandle, BM_CLICK, 0, 0
End If
End Sub
سلام. ممنون به خاطر برنامه ای که قرار دادین.ولی متاسفانه روی برنامه اصلی جواب نگرفتم
یه برنامه ساده دیگه هم نوشتم متاسفانه روی اونم جواب نگرفتم اگه ممکنه ببینید اشکال کار کجاست
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Const BM_CLICK = &HF5
Private Sub Command1_Click()
MsgBox "salam", , "salam"
End Sub
Private Sub Form_Load()
Timer1.Enabled = True
Timer1.Interval = 100
End Sub
Private Sub Timer1_Timer()
Dim messageHandle As Long
Dim OKHandle As Long
messageHandle = FindWindow(vbNullString, "salam")
OKHandle = FindWindowEx(messageHandle, 0, vbNullString, "OK")
If OKHandle <> 0 Then
SendMessage OKHandle, BM_CLICK, 0, 0
End If
End Sub
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
ببین برنامه کامل درسته مشکل اینه که شما نباید این دوتا رو در یک برنامه قرار دهید. یعنی باید در دو فایل exe جداگانه قرار دهید.
در کد بالا وقتی msgbox اجرا میشود کل برنامه متوقف می شود و منتظر می ماند تا شما بر روی دکمه OK پیغام کلیک کنید.
MsgBox "salam", , "salam"
شما کد بالا که موجب یک پیغام می شود را در برنامه ای جدا قرار داده و بقیه را در برنامه ای دیگر و میبینید که پیغامو می بنده.
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام علیکم
هملانطور که جناب Just4forum هم فرمودند تا زمانی که پیام فعال باشد تایمر در این فاصله نمیتواند عمل کند، روش دیگر برای اینکه هر دو در یک برنامه عمل کنند استفاده از تابع SetTimer است
موفق باشید
-
1 ضمیمه
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام . متاسفانه بازم روی برنامه اصلی کار نمی کنه ؟
این یک تصویر از پیغامی که میده :
ضمیمه 88969
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام علیکم
کد زیر را هم بررسی کنید،
ابتدا این کدها را در یک مادول کد قرار بدین:
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function SetTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
Declare Function KillTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long) As Long
Private Const WM_CLOSE = &H10
Public Const TMR_AUTO_CLOSE_MSG& = &H1
Private mMsgTitle$
Sub AutoCloseMessageTimer(fForm As Form, sMessageTitle$)
mMsgTitle$ = sMessageTitle$
SetTimer fForm.hwnd, TMR_AUTO_CLOSE_MSG&, 1, AddressOf TimerProc
End Sub
Private Sub TimerProc(ByVal hwnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long)
Dim lWH&
lWH& = FindWindow("#32770", mMsgTitle$)
If lWH& > 0 Then
SendMessage lWH&, WM_CLOSE, 0, 0
End If
End Sub
و کد زیر را هم در Unload فرم:
Private Sub Form_Unload(Cancel As Integer)
KillTimer hwnd, TMR_AUTO_CLOSE_MSG&
End Sub
برای نمونه:
Private Sub Command1_Click()
AutoCloseMessageTimer Me, "Message from webpage"
End Sub
موفق باشید
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام
جواب داد . از تمامی دوستانی که کمک کردند ممنونم
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام . ببخشید دوستان یه مشکل دیگه پیش اومده. اونجا بود که کلید اینتر رو با SendKeys "{enter}", True ارسال کردیم. این کد کلید اینتر رو به سیستم عامل میفرسته . نمیشه کاری کرد که کلید اینتر رو به خود برنامه بفرسته ؟ چون در این صورت اگر برنامه minimize بشه دیگه برنامه کار نمی کنه چون کلید اینتر زده نمیشه.
ممنون از همگی
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
دوستان کسی در این باره اطلاعی نداره ؟
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام علیکم
کد زیر را بررسی کنید:
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String) As Long
Private Const WM_KEYDOWN = &H100
Private Const WM_KEYUP = &H101
Private Const WM_CHAR = &H102
Private Sub Command1_Click()
SendMessage hwnd, WM_KEYDOWN, 0&, 0
SendMessage hwnd, WM_CHAR, vbKeyReturn, 0
SendMessage hwnd, WM_KEYUP, 0&, 0
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
MsgBox KeyAscii
End Sub
برای تست خاصیت Key-Preview فرم را بر روی True تنظیم کنید
موفق باشید
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
نقل قول:
نوشته شده توسط
محسن واژدی
سلام علیکم
کد زیر را بررسی کنید:
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String) As Long
Private Const WM_KEYDOWN = &H100
Private Const WM_KEYUP = &H101
Private Const WM_CHAR = &H102
Private Sub Command1_Click()
SendMessage hwnd, WM_KEYDOWN, 0&, 0
SendMessage hwnd, WM_CHAR, vbKeyReturn, 0
SendMessage hwnd, WM_KEYUP, 0&, 0
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
MsgBox KeyAscii
End Sub
برای تست خاصیت Key-Preview فرم را بر روی True تنظیم کنید
موفق باشید
با تشکر فراوان از شما
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام . اینو الان که روی برنامه اصلی امتحان کردم جواب نگرفتم با دستور send keys حواب میده ولی با این دستور جواب نمی گیرم. نمیشه اینتر رو به شی خاصی ارسال کرد . آخه فک کنم این برنامه کلید اینتر رو به فرم ارسال می کنه. با تشکر
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
نقل قول:
نوشته شده توسط
ho3ein.3ven
سلام . اینو الان که روی برنامه اصلی امتحان کردم جواب نگرفتم با دستور send keys حواب میده ولی با این دستور جواب نمی گیرم. نمیشه اینتر رو به شی خاصی ارسال کرد . آخه فک کنم این برنامه کلید اینتر رو به فرم ارسال می کنه. با تشکر
سلام
بصورت پیش فرض کلید را به فرم ارسال میکند چرا که هندل فرم را برای SendMessage تعریف کرده ایم، در کل اگر بخواهیم روالی را برای ارسال کلید enter به فرم تعریف کنیم، میتوانیم آنرا مشابه زیر تعریف کنیم:
Sub SendEnterKey(lHwnd&)
SendMessage lHwnd&, WM_KEYDOWN, 0&, 0
SendMessage lHwnd&, WM_CHAR, vbKeyReturn, 0
SendMessage lHwnd&, WM_KEYUP, 0&, 0
End Sub
برای مثال برای ارسال enter به text1 موجود بر روی فرمی در وی بی:
Private Sub Command1_Click()
Call SendEnterKey(Text1.hwnd)
End Sub
برای سایر هندل ها هم به همین صورت هندل مورد نظر را به روال SendEnterKey ارسال میکنیم
موفق باشید
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام ممنون از شما . وقتی که برابر با webbrowser1.hwnd قرارش میدم برنامه ارور میده .
کد هام به این صورت :
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String) As Long
Private Const WM_KEYDOWN = &H100
Private Const WM_KEYUP = &H101
Private Const WM_CHAR = &H102
Private Sub SendEnterKey(lHwnd&)
SendMessage lHwnd&, WM_KEYDOWN, 0&, 0
SendMessage lHwnd&, WM_CHAR, vbKeyReturn, 0
SendMessage lHwnd&, WM_KEYUP, 0&, 0
End Sub
Private Sub Command2_Click()
Call SendEnterKey(w.hwnd)
End Sub
مشکل کجاست ؟
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
متاسفانه در webbrowser نمی توانید از متد hwnd استفاده کنید و باید از توابع API هندل آن را بدست آورید.
البته این تجربه منه شاید راه دیگری باشه !!!:متفکر:
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
دوستان کسی هنوز به نتیجه ای نرسیده ؟
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
ممنون از همکاریتون
ولی این روش رو میدانستم
فقط مشکل این است
در پورتالی که من لازم است توسط مرورگز دست نوشته خودم باز کنم
میبایست یک سری آدرس عکس را به مرورگر بدهم تا آپلود کند
روش کلیک کردن روی شی را میدانم
ولی وقتی به کنترل آپلود فایل میرسم نمی دانم چه مقداری به کنترل آپلود فایل بدهم تا عکس مورد نظر من ادرس انتخابی داخل کنترل شود
هر روشی امتحان می کنم متاسفانه جواب نمی دهد
باتشکر
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام. برادر چرا تو تاپیک من پست میزنی ؟
دوستان کسی نفهمید چطور میشه اینکارو انجام داد ؟
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
نقل قول:
نوشته شده توسط
ho3ein.3ven
دست شما درد نکنه . ولی این مشکلم حل شد . الان فقط مشکلم اوکی کردن پیغامی هست که توسط وب باز می شه.
نقل قول:
نوشته شده توسط
ho3ein.3ven
سلام. برادر چرا تو تاپیک من پست میزنی ؟
دوستان کسی نفهمید چطور میشه اینکارو انجام داد ؟
شرمنده تاپیک یکم طولانی شده، من نفهمیدم مشکل کجاست؟
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
نقل قول:
نوشته شده توسط
ho3ein.3ven
خب پس الان چکار کنم ؟
بفرمایید :
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Sub Form_Load()
Dim WBhwnd As Long
WBhwnd = FindWindowEx(Me.hwnd, 0, "Shell Embedding", vbNullString)
MsgBox WBhwnd
End Sub
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام. اگه میشه یه توضیح بده.
چون من الان وب بروزر رو جایگزین کردم باز ارور داد.
هندل فرم رو 0 میده . بعد اینکه اگه هندل رو بدست آوردیم چطوری اینتر رو ارسال کنیم.
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
نه شما چیزی رو جایگذین نکن.
متغیر WBHwnd هندل وب بروزری که در برنامه استفاده کردی رو بر می گردونه.
و این متغر رو جایگذین کد جناب واژدی کن.
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام . ممنون از شما
متاسفانه بازم جواب نمیده .
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String) As Long
Private Const WM_KEYDOWN = &H100
Private Const WM_KEYUP = &H101
Dim p As Boolean
Private Const WM_CHAR = &H102
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Sub SendEnterKey(lHwnd&)
SendMessage lHwnd&, WM_KEYDOWN, 0&, 0
SendMessage lHwnd&, WM_CHAR, vbKeyReturn, 0
SendMessage lHwnd&, WM_KEYUP, 0&, 0
End Sub
Private Sub Command2_Click()
Dim WBhwnd As Long
WBhwnd = FindWindowEx(Me.hwnd, 0, "Shell Embedding", vbNullString)
Call SendEnterKey(WBhwnd)
End Sub
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام . متوجه نشدید مشکل از کجاست ؟
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
با سلام . کدی که من نوشتم هندل وب بروزر رو بر می گردونه ولی احتمالا کاری که شما می خواین انجام بدین بدین روش عملی نیست.
میشه بگین دقیقا مشکلتون چیه شاید راه دیگری پیدا کردیم.
-
نقل قول: بدست آوردن GetElementById یک شی در web browser
سلام
ببین من می خوام کلید اینتر رو به وب بروزر ارسال کنم . با دستور سند کیز اینتر به سیستم عامل ارسال میشه . چون برنامه من یه کار رو مرتبا تکرار می کنه اگر برنامه مینیمایز بشه کلید اینتر به برنامه ارسال نمیشه و دیگه برنامه کار نمی کنه . روش دیگری هم بود که اینتر به فرم ارسال میشد در این حالت هم روی وب بروزر هیچ تاثیری نداشت.حالا من یه روش می خوام که وقتی هم که برنامه مینیمایز باشه کلید اینتر به وب بروزر ارسال بشه .
با تشکر