View Full Version : سوال: مانیتور کردن کیبورد
joooje
سه شنبه 28 تیر 1390, 10:10 صبح
سلام به همه دوستان و آرزوی خوبی و خوشی ایام برای همه
من میخوام یدونم چطور میتونم بفهمم که چه دکمه هایی رو کاربر روی کیبورد فشار میده؟
حتی زمانی که برنامه من مخفی باشه
راسش جستجو کردم ولی چیز بدردبخوری نیافتم
البته نمیدونستم که برای این کار دقیقا چی رو باید جستجو کنم و مانیتور کردن کیبورد رو جستجو کردم
میدونم که در این باره زیاد پست هست
پس اگر ممکنه راهنمایی کنید که چه کلمه ای رو بگردم تا بتونم اطلاعات بدست بیارم
و خلاصه هر نوع راهنمایی که میتونید به من بکنید
باز هم ممنون
یوسف زالی
سه شنبه 28 تیر 1390, 10:25 صبح
سلام.
دنبال KeyLogger باش.
:لبخند:
Felony
سه شنبه 28 تیر 1390, 13:22 عصر
باید پیغام های مرتبط با صفحه کلید رو به صورت Global هوک کنید ؛ همین کلیدوارژه ( Hook ) رو جست و جو کنید .
nsco_nsco
سه شنبه 28 تیر 1390, 18:44 عصر
سلام من هم دنبال همچین ماجرایی هستم و تا انجا که می دونم Hook هست اگر چیز خوبی پیدا کردی ممنون میشوم همین جا قرار بدید با تشکر :قلب:
tdkhakpur
سه شنبه 28 تیر 1390, 19:27 عصر
اینجا Disable كردن كليد Mute روي كيبورد (http://barnamenevis.org/showthread.php?289068-Disable-كردن-كليد-Mute-روي-كيبورد&highlight=mute+%D8%BA%DB%8C%D8%B1%D9%81%D8%B9%D8%A 7%D9%84) برای یک گزینه عمل hook انجام شده فقط کافیه بررسی رو برای مواردی که میخواهید مونیتور بشه تغییر بدید در حالت کلی همه کلیدها از تابعی که صدا رو قطع و صل میکنه عبور میکنه، اونجا میتونید عمل مانیتور رو انجام بدید.
joooje
سه شنبه 28 تیر 1390, 21:15 عصر
سلام و ممنون از کمک دوستان
بهترین تاپیکهایی که پیدا کردم این چنتا بودند که اینجا گذاشتم.
هوک کردن کیبورد (http://barnamenevis.org/showthread.php?205864-%D9%87%D9%88%DA%A9-%DA%A9%D8%B1%D8%AF%D9%86-%DA%A9%DB%8C%D8%A8%D9%88%D8%B1%D8%AF)
شناسايي كليك ماوس در خارج از برنامه دلفي (http://barnamenevis.org/showthread.php?184405-شناسايي-كليك-ماوس-در-خارج-از-برنامه-دلفي)
Keylogger (http://barnamenevis.org/showthread.php?208739-Keylogger)
البته تاپیکهای دیگه ای رو هم خوندم.
و از تمام اونها اطلاعات زیادی در مورد هوک (نه تنها برای کیبورد) به دست آوردم.
متاسفانه اکثر لینکهای دانلود دیگه درست جواب نمیده و بعضی از تاپیکها هم بی پاسخ رها شده.
چنتا نمونه هم که دانلود کردم یه فایل dll با این نامها hook.dll یا mousehook.dll (برای هوک موس) رو نداشت و اجرا نمیشد.
حالا الان نمیدونم چی کار باید بکنم؟
ممنون میشم اگر کسی میتونه راهنمایی کنه یا نمونه ای برای راهنمایی داره بزاره.
باز هم ممنون از همه دوستان :بوس:
Felony
سه شنبه 28 تیر 1390, 21:28 عصر
همون نمونه سورس معرفی شده در پست 5 کارتون رو راه میاندازه .
joooje
چهارشنبه 29 تیر 1390, 15:36 عصر
بله
فقط برای من که مبتدی هستم یکم سخته که مثلا الان بفهمم تو اون نمونه دقیقا چه اتفاقی میافته
یا مثلا چطور وقتی اون برنامه باز هست اگر کاربر کلید y رو زد من از کجا میتونم به دستش بیارم
میدونید دنبال یه نمونه واضح تر یا ساده تر میگردم
امیدوارم بتونم پیدا کنم
Felony
چهارشنبه 29 تیر 1390, 16:38 عصر
بله
فقط برای من که مبتدی هستم یکم سخته که مثلا الان بفهمم تو اون نمونه دقیقا چه اتفاقی میافته
یا مثلا چطور وقتی اون برنامه باز هست اگر کاربر کلید y رو زد من از کجا میتونم به دستش بیارم
میدونید دنبال یه نمونه واضح تر یا ساده تر میگردم
امیدوارم بتونم پیدا کنم
یک نمونه اولیه براتون نوشتم که کد تمام کلیدها فشار داده شده از Keyboard رو نمایش میده ، اگر دنبال کدی ساده تر از این میگردی فعلا بی خیال هوک شو :چشمک:
joooje
چهارشنبه 29 تیر 1390, 23:04 عصر
سلام آقای تاجیک و ممنون از لطفتون
البته این که گفتم دنبال نمونه ساده میگردم ، خب باید به من حق بدید، بلاخره من مبتدی هستم
انگار این مشکل دایمی شده
تو نمونه ی شما هم هست
چرا و مشکل از کجاست؟
72716
http://barnamenevis.org/images/misc/pencil.pngکجای کار اشتباه دارم که این پیغام رو میده؟
loo30fer
چهارشنبه 29 تیر 1390, 23:10 عصر
انگار این مشکل دایمی شده
تو نمونه ی شما هم هست
چرا و مشکل از کجاست؟این مشکلی نیست که دائمی باشه بلکه تنها به خاطر این هست که Hook.dll رو در کنار فایل اجرایی قرار ندادین همین.
joooje
پنج شنبه 30 تیر 1390, 11:14 صبح
سلام
ممنون
آقای تاجیک بازم ممنون از محبتتون و یه سوال:
چرا وقتی برنامه من، پنجره فعال نیست یا مینیمایز یا مخفی هست دیگه این دستورات کار نمیده و ارور میده؟
یه خواهش دیگه هم داشتم
اگر فرصت کردید یه منبع خوب بهم معرفی کنید تا بتونم کلا در زمینه هوک اطلاعات بدست بیارم ، انگلیسی هم باشه ایراد نداره
باز هم ممنون
Felony
پنج شنبه 30 تیر 1390, 15:33 عصر
چرا وقتی برنامه من، پنجره فعال نیست یا مینیمایز یا مخفی هست دیگه این دستورات کار نمیده و ارور میده؟
برنامه شما یعنی کدوم ؟ همینی که من نوشتم ؟ اگر آره مشکلی نداره .
اگر فرصت کردید یه منبع خوب بهم معرفی کنید تا بتونم کلا در زمینه هوک اطلاعات بدست بیارم ، انگلیسی هم باشه ایراد نداره
برای شروع :
http://en.wikipedia.org/wiki/Hooking
http://msdn.microsoft.com/en-us/library/ms632589(v=vs.85).aspx
http://delphi.about.com/od/kbwinshell/a/delphi_hook.htm
joooje
پنج شنبه 30 تیر 1390, 17:47 عصر
سلام و ممنون از راهنماییتون
ببخشید، بله منظورم برنامه شما بود:اشتباه:
مشکل حل شد
فقط یه سوال دیگه
من تونستم بفهمم که چطور از exe به dll دستور میفرستید که کار رو انجام بده
ولی آیا راهی هست که یه اطلاعاتی رو از dll به exe فرستاد، مثلا کد دکمه رو به جای اینکه با مسیج نمایش بده اونو به exe ارسال کنه و من بتونم اونو توی exe دریافت کنم
و یه سوال دیگه اینکه چرا داریم از dll استفاده میکنم (چون همه نمونه هایی که من دیدم اینطوری بودند)، آیا این حتما لازمه یا راهی جز این هم هست؟ یا آیا میشه این فایل dll رو توی exe آورد که نیاز نباشه کنار فایلمون باشه؟
البته هنوز اون منابع رو نخوندم
اگر میدونید که با خواندن اونا جواب سوالامو میگیرم که دیگه مزاحم وقت شما و دوستان نمیشم
باز هم ممنون
Felony
پنج شنبه 30 تیر 1390, 18:01 عصر
ولی آیا راهی هست که یه اطلاعاتی رو از dll به exe فرستاد، مثلا کد دکمه رو به جای اینکه با مسیج نمایش بده اونو به exe ارسال کنه و من بتونم اونو توی exe دریافت کنم
بله ، میتونید از Memory Mapped Files (http://msdn.microsoft.com/en-us/library/aa366556(v=vs.85).aspx) استفاده کنید .
و یه سوال دیگه اینکه چرا داریم از dll استفاده میکنم (چون همه نمونه هایی که من دیدم اینطوری بودند)، آیا این حتما لازمه یا راهی جز این هم هست؟
البته هنوز اون منابع رو نخوندم
کلا 2 نوع هوک داریم ؛ Local و Global
برای Local Hook که فقط قراره برنامه خودتون رو هوک کنید میتونید پیاده سازی رو تو خود فایل اجرایی برنامه هم انجام بدید ولی برای Global Hook که قراره تمام تردهای موجود رو هوک کنید باید پیاده سازی هوک رو تو یک DLL انجام بدید ؛ تو اون لینک ها در موردش مفصلا بحث شده .
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.