امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
توضیحاتی در مورد SendMessage وWM_GETTEXT
نویسنده پیام
m_vb6 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 44
موضوع‌ها: 7
تاریخ عضویت: دى ۱۳۸۶

تشکرها : 3
( 3 تشکر در 3 ارسال )
ارسال: #12
RE: توضیحاتی در مورد SendMessage وWM_GETTEXT
Option Explicit
Private Const WM_SETTEXT = &HC
Private Const WM_GETTEXT = &HD
Private Const WM_GETTEXTLENGTH = &HE

Private Type POINTAPI
x As Long
y As Long
End Type
Private Declare Function GetForegroundWindow Lib "user32" () As Long
Private Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) 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 GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Function WindowFromPoint Lib "user32" (ByVal xPoint As Long, ByVal yPoint As Long) As Long

Private Sub Timer1_Timer()
Dim WIN_HWND As Long
Dim STR_CLASS As String
Dim NMAX_CLASS As Long
Dim RET_CLASS As Long
Dim RET_SENDMESSAGE As Long
Dim LEN_MESSAGE As Long
Dim MESSAGE As String
Dim pt As POINTAPI, wnd As Long
Dim pos As POINTAPI
Dim retval As Long
Dim retval2 As Long
Dim sp As String




WIN_HWND = GetForegroundWindow

STR_CLASS = Space$(255)
NMAX_CLASS = 255
RET_CLASS = GetClassName(WIN_HWND, STR_CLASS, NMAX_CLASS)

MESSAGE = " ÓáÇã "
LEN_MESSAGE = Len(MESSAGE)
GetCursorPos pt
retval = GetCursorPos(pos)
retval = WindowFromPoint(pos.x, pos.y)
sp = Space$(255)
retval2 = SendMessage(retval, WM_GETTEXTLENGTH, 0, ByVal sp)
retval2 = SendMessage(retval, WM_GETTEXT, retval2 + 1, ByVal sp)
Text3.Text = Left$(sp, retval2)
If Left$(STR_CLASS, 19) = "YSearchMenuWndClass" Then
retval2 = SendMessage(retval, WM_SETTEXT, ByVal LEN_MESSAGE, ByVal MESSAGE)
SendKeys ("~")
End If
Timer1.Interval = 5000
Text1.Text = Empty
Text1.Text = MESSAGE
Text2.Text = STR_CLASS
End Sub
من از کد بالا استفاده کردم اما وقتی روی قسمتی که PM رو میفرسته با موس قرار میگیرم
فقط اسم خودم برای طرف مقابل ارسال میشه نه پیغام من به نظر شما میشه با این کد کاری کرد البته اگه کد مشکلش حل بشه میتونم کامل ترش هم بکنم
۰۱-اسفند-۱۳۸۶, ۱۹:۵۳:۴۴
ارسال‌ها
پاسخ
m_vb6 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 44
موضوع‌ها: 7
تاریخ عضویت: دى ۱۳۸۶

تشکرها : 3
( 3 تشکر در 3 ارسال )
ارسال: #13
RE: توضیحاتی در مورد SendMessage وWM_GETTEXT
lord_viper نوشته است:با اجازه جناب iron_fist
m_vb6 نوشته است:با سلام مجدد ایا تابع sendmessage برای ارسال تبلیغات به یاهو مسنجر میتونه مورد استفاده قرار بگیره اگه جواب منفی هست با چه روشی این کار عملیه من تست کردم جواب نمیده و pm های من رو بصورت رشته خالی تو یاهو ارسال میکنه در صورتی که با نوت پد تست کردم جواب میداد
بله میتونین
بهتره برای طراحی رباط اولا پروتکل یاهو و کار با سوکتها رو خوب یاد بگیرین
در ضمن یاهو هم مثل سایتها و شرکتهای بزرگ دیگه از تکنولوژی com استفاده میکنه و یرای اون هم com library میده بیرون که بدون دردسر و خیلی راحت میتونین با سرورهای یاهو ارتباط برقرار کنین و هر وقت یاهو تغییری در سرورهاش بوجود اورد فقط برنامتونو با library جدید update کنین (از dll YMSG12 هم میتونین استفاده کنین)
یا با استفاده از سوکت اطلاعات خوتونو به صفحات وب سرور یاهو بفرستین واز اون روش عمل کنین(البته الان این کار خیلی سخت شده و یاهو کار با Session ها رو هم اورده تو این کار)
بهتره از dll yahoo استفاده کنین تو سایت هم هست

میتونید روش استفاده از این کتابخانه رو برام بگید و یا تایپیکی مفید در این زمینه سراغ دارین
۰۱-اسفند-۱۳۸۶, ۱۹:۵۷:۴۸
ارسال‌ها
پاسخ
Iron_Fist غایب
مدیر بازنشسته
*****

ارسال‌ها: 1,456
موضوع‌ها: 70
تاریخ عضویت: آبان ۱۳۸۴

تشکرها : 109
( 456 تشکر در 134 ارسال )
ارسال: #14
RE: توضیحاتی در مورد SendMessage وWM_GETTEXT
نقل قول: سلام
3 برنامه من هم خارج از موضوع جدید مطرح شده نیست
فرمایش شما صحصیح من حواسم نبود
شما بگید دقیقآ چی می خواید تا من بهتون بهتر کمک کنم
فقط می خواید تو صفحه مسیج ، مسیج بفرستید ؟
راستی این رو هم ببینید . فکر می کنم مال آقای ویسکرمی هست


فایل‌(های) پیوست شده
.zip   1127289777sendpm.zip (اندازه: 1.79 KB / تعداد دفعات دریافت: 42)
(آخرین ویرایش در این ارسال: ۰۱-اسفند-۱۳۸۶, ۲۰:۱۹:۰۲، توسط Iron_Fist.)
۰۱-اسفند-۱۳۸۶, ۲۰:۰۴:۱۴
ارسال‌ها
پاسخ
m_vb6 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 44
موضوع‌ها: 7
تاریخ عضویت: دى ۱۳۸۶

تشکرها : 3
( 3 تشکر در 3 ارسال )
ارسال: #15
RE: توضیحاتی در مورد SendMessage وWM_GETTEXT
بله فعلا میخواهم همین کار رو انجام بدم متشکرم
۰۱-اسفند-۱۳۸۶, ۲۰:۱۹:۵۸
ارسال‌ها
پاسخ
Iron_Fist غایب
مدیر بازنشسته
*****

ارسال‌ها: 1,456
موضوع‌ها: 70
تاریخ عضویت: آبان ۱۳۸۴

تشکرها : 109
( 456 تشکر در 134 ارسال )
ارسال: #16
RE: توضیحاتی در مورد SendMessage وWM_GETTEXT
فکر می کنم روش آقای ویسکرمی بهتر باشه
چون فرستادن متن به تکست باکسی که تو صفحه مسیج هست یه چیز هست و باز سازی دکمه اینتر یه چیز دیگه
بجای اینهمه کد از کد آقای ویسکرمی استفاده کنید . یه خط هم بیشتر نیست
سوالی بود من درخدمتم
۰۱-اسفند-۱۳۸۶, ۲۰:۳۲:۴۲
ارسال‌ها
پاسخ
m_vb6 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 44
موضوع‌ها: 7
تاریخ عضویت: دى ۱۳۸۶

تشکرها : 3
( 3 تشکر در 3 ارسال )
ارسال: #17
RE: توضیحاتی در مورد SendMessage وWM_GETTEXT
Iron_Fist نوشته است:
نقل قول: سلام
3 برنامه من هم خارج از موضوع جدید مطرح شده نیست
فرمایش شما صحصیح من حواسم نبود
شما بگید دقیقآ چی می خواید تا من بهتون بهتر کمک کنم
فقط می خواید تو صفحه مسیج ، مسیج بفرستید ؟
راستی این رو هم ببینید . فکر می کنم مال آقای ویسکرمی هست

کد شما فقط برای یک نفر pm میده این کد رو قبلا از سیاوش تو سایت برنامه نویس دیده بودم ایا میشه کاری کرد که برای همه افراد یک روم ارسال بشه باز هم ممنون
۰۱-اسفند-۱۳۸۶, ۲۰:۳۵:۱۶
ارسال‌ها
پاسخ
Iron_Fist غایب
مدیر بازنشسته
*****

ارسال‌ها: 1,456
موضوع‌ها: 70
تاریخ عضویت: آبان ۱۳۸۴

تشکرها : 109
( 456 تشکر در 134 ارسال )
ارسال: #18
RE: توضیحاتی در مورد SendMessage وWM_GETTEXT
اون رو دقیقآ نمی دونم .
بهتره سوالات جدیدتون رو تو تاپیک مجزا بپرسید تا بهتر جواب بگیرید
۰۱-اسفند-۱۳۸۶, ۲۰:۳۹:۳۶
ارسال‌ها
پاسخ
m_vb6 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 44
موضوع‌ها: 7
تاریخ عضویت: دى ۱۳۸۶

تشکرها : 3
( 3 تشکر در 3 ارسال )
ارسال: #19
RE: توضیحاتی در مورد SendMessage وWM_GETTEXT
ممنون از زحمتی که کشیدین
دلین من برای استفاده از یک کد دیگه اینه که کد آقای ویسکرمی ابتدا به سایت یاهو وصل میشه
که این خودش سرعت برنامه رو پایین میاره
دوستان دیگه نظری ندارن؟
شما تایپیکی در مورد کتابخانه ای که وایپر معرفی کردن سراغ دارین البیته این کتابخانه رو تو سایت پی سی ورد هم دیده بودم اما در مورد فانکشنهاش چیزی نبود قبلنها پیمان میومد خیلی ازش کمک میگرفتم اما مدتی هست که پیمان هم نمیاد
(آخرین ویرایش در این ارسال: ۰۱-اسفند-۱۳۸۶, ۲۰:۵۶:۲۶، توسط m_vb6.)
۰۱-اسفند-۱۳۸۶, ۲۰:۴۹:۲۸
ارسال‌ها
پاسخ
m_vb6 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 44
موضوع‌ها: 7
تاریخ عضویت: دى ۱۳۸۶

تشکرها : 3
( 3 تشکر در 3 ارسال )
ارسال: #20
RE: توضیحاتی در مورد SendMessage وWM_GETTEXT
Option Explicit

Private Const WM_SETFOCUS = &H7
Private Const WM_KILLFOCUS = &H8
Private Const WM_SETREDRAW = &HB
Private Const WM_SETTEXT = &HC
Private Const WM_GETTEXT = &HD
Private Const BM_CLICK = 245
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 Sub Command1_Click()
On Error Resume Next

Dim imclassHwnd As Long
Dim YIMInputWindowHwnd As Long
Dim SendButtonHwnd As Long
Dim RetVal As Long
Dim MyString As String

MyString = Text1.Text

imclassHwnd = FindWindow("imclass", vbNullString)
If imclassHwnd <> 0 Then
SendButtonHwnd = FindWindowEx(imclassHwnd, 0, "Button", "&Send")
YIMInputWindowHwnd = FindWindowEx(imclassHwnd, 0, "YIMInputWindow", vbNullString)
If YIMInputWindowHwnd <> 0 And SendButtonHwnd <> 0 Then
RetVal = SendMessage(YIMInputWindowHwnd, WM_SETTEXT, 0&, ByVal MyString)
RetVal = SendMessage(SendButtonHwnd, BM_CLICK, 0&, 0&)
End If
Else
MsgBox "Not found any chatRoom !!! ", vbCritical, "ChatRoom"
End If

End Sub


این کد رو سیاوش از سایت برنامه نویس گذاشته البته یک کد هم کد مستر گیر اوردم که کامل تر بود بد ندیدم اینجا هم باشه تا دوستان استفاده کنن
۱۱-اسفند-۱۳۸۶, ۰۰:۳۰:۵۵
ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  پیغام اینتر تو تابع SendMessage چی میشه؟ red11011 12 11,625 ۲۱-اسفند-۱۳۸۹, ۰۰:۱۷:۵۵
آخرین ارسال: GTAexcess
  کمک در استفاده از SendMessage behzadX 2 3,971 ۱۷-شهریور-۱۳۸۹, ۲۳:۳۸:۱۴
آخرین ارسال: behzadX
  کمک در مورد SendMessage aminbrleevb 5 3,155 ۱۰-شهریور-۱۳۸۷, ۲۱:۳۹:۴۸
آخرین ارسال: Iron_Fist
  توضیحاتی دستور seek میخوام godvb 14 9,931 ۰۳-اردیبهشت-۱۳۸۷, ۱۵:۳۶:۵۶
آخرین ارسال: godvb
  چند تا سوال در مورد گرفتن كليد مورد نظر خارج ازمحيط فرم و... St4r-S4t 13 9,188 ۱۵-آذر-۱۳۸۴, ۱۴:۴۳:۲۰
آخرین ارسال: St4r-S4t

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 2 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS