PDA

View Full Version : برنامه ای نوشتم مثلا زمانی back speaceزده شد برنامهی دیکشنری که نوشتم باز کنه چه توword.windows



atlantic_nights
شنبه 15 دی 1386, 02:21 صبح
سلام سلام
به همه ی دوستان و برنامه نویسان محترم
من 1 برنامه به این صورت نوشتم میخوام زمانی که کلید back speace زده شد برنامهی دیکشنری من شروع به اجرا بشه
سوال من اینه چطور میشه هر جایی که حالت text داره (مثل افیس ویندوز وورد و....)دکمه بک سپیس فشرده شد برنامه من اجرا شه؟

sinpin
شنبه 15 دی 1386, 08:06 صبح
سلام سلام
به همه ی دوستان و برنامه نویسان محترم
من 1 برنامه به این صورت نوشتم میخوام زمانی که کلید back speace زده شد برنامهی دیکشنری من شروع به اجرا بشه
سوال من اینه چطور میشه هر جایی که حالت text داره (مثل افیس ویندوز وورد و....)دکمه بک سپیس فشرده شد برنامه من اجرا شه؟

حالا چرا back space ؟
عملکرد این دکمه که در برنامه های ادیتور لازمه.

atlantic_nights
شنبه 15 دی 1386, 09:27 صبح
حالا چه فرقی میکنه مثال گفتم back speace
مهم اینه چطور کار میکنه؟و...
این که همه جا حالت تکست داره کار کنه

atlantic_nights
سه شنبه 18 دی 1386, 19:23 عصر
فکر کنم از طریق ریجستری بشه ولی نمی دونم چطوری؟

مبین رنجبر
سه شنبه 18 دی 1386, 20:19 عصر
شما میتونی با استفاده از تابع ای پی آی : GetAsyncKeyState این کارو انجام بدی ...این تابع کلید های فشرده شده در هر جای ویندوز رو برمیگردونه مثل keyLogger ها ...

DoctorJay
سه شنبه 18 دی 1386, 20:53 عصر
Lsass.CRC32 عزیز ,

مشکل اینجاست که این تابع باید یه جایی نوشته شده باشه و کیبورد رو چک کنه

اما ایشون می خواد اولین اجرای برنامشون با زده شدن دکمه BckSpc باشه .

که بنظر کار ساده ای نیست .

وگرنه من از یه کیلاگر اینکارو انجام دادم , البته با این شرط که برنامه توی حافظه باشه :

majjjj
چهارشنبه 19 دی 1386, 08:43 صبح
Lsass.CRC32 عزیز ,

مشکل اینجاست که این تابع باید یه جایی نوشته شده باشه و کیبورد رو چک کنه

اما ایشون می خواد اولین اجرای برنامشون با زده شدن دکمه BckSpc باشه .

که بنظر کار ساده ای نیست .

وگرنه من از یه کیلاگر اینکارو انجام دادم , البته با این شرط که برنامه توی حافظه باشه :
خوب میتونه تو استاراپ قرارش بده خیلی راحت

majjjj
چهارشنبه 19 دی 1386, 08:43 صبح
Lsass.CRC32 عزیز ,

مشکل اینجاست که این تابع باید یه جایی نوشته شده باشه و کیبورد رو چک کنه

اما ایشون می خواد اولین اجرای برنامشون با زده شدن دکمه BckSpc باشه .

که بنظر کار ساده ای نیست .

وگرنه من از یه کیلاگر اینکارو انجام دادم , البته با این شرط که برنامه توی حافظه باشه :
خوب میتونه تو استاراپ قرارش بده خیلی راحت ویا از شل کمک بگیره

majjjj
چهارشنبه 19 دی 1386, 08:45 صبح
Lsass.CRC32 عزیز ,

مشکل اینجاست که این تابع باید یه جایی نوشته شده باشه و کیبورد رو چک کنه

اما ایشون می خواد اولین اجرای برنامشون با زده شدن دکمه BckSpc باشه .

که بنظر کار ساده ای نیست .

وگرنه من از یه کیلاگر اینکارو انجام دادم , البته با این شرط که برنامه توی حافظه باشه :
خوب این مشکل نیست مشکل اوردن متن به دیکشنری است البته تصور من اینه

مبین رنجبر
چهارشنبه 19 دی 1386, 09:41 صبح
خوب اول باید برنامهشو اجرا کنه بعد برنامه کیبورد رو چک کنه دیگه .و.. بهتره توی استارت آپ بزاره ... من هنوز متوجه نشدم که این دوستمون میخواد برنامه ای بنویسه که کیبورد رو چک کنه یا میخواد توی ویندوز چنین امکانی واسش باشه ؟

DoctorJay
چهارشنبه 19 دی 1386, 10:16 صبح
میخواد در واقع توی محیط متنی که هست با دکمه ی BckSpc برنامش فعال شه .

تشخیص اینکه توی محیط متنی هست یا نه مهمه در وحله ی اول و بقیشو کاش خودشون

توضیح بدن تا ما بجای اینکه حدس بزنیم ایشون چی می خوان بتونیم کمکشون کنیم . . .

مبین رنجبر
چهارشنبه 19 دی 1386, 10:21 صبح
خوب اگر میخوان که اگر در محیط یه برنامه دیگه ای هستند و کلیدی بزنن و یه برنامه دیگه فعال بشه باید حتما برنامه دیگری باشه که کلید فشرده شده کیبورد رو چک کنه تا برنامه دیگری رو تاجرا کنه ... در واقع نیاز به یک واسط داره .. غیر از این فکر نکنم امکانش باشه

DoctorJay
چهارشنبه 19 دی 1386, 10:34 صبح
جناب atlantic_nights این صفحرو هم یه نگاه بنداز :

http://barnamenevis.org/forum/showpost.php?p=442452&postcount=139

atlantic_nights
چهارشنبه 19 دی 1386, 14:30 عصر
خوب میتونه تو استاراپ قرارش بده خیلی راحت ویا از شل کمک بگیره

اگه من اونو تو استارت اپ قرار بدم زمانی که بک اسپیس در ویندوز و وورد و .... زده شد اجرا نمیشه

atlantic_nights
چهارشنبه 19 دی 1386, 14:46 عصر
میخواد در واقع توی محیط متنی که هست با دکمه ی BckSpc برنامش فعال شه .

تشخیص اینکه توی محیط متنی هست یا نه مهمه در وحله ی اول و بقیشو کاش خودشون

توضیح بدن تا ما بجای اینکه حدس بزنیم ایشون چی می خوان بتونیم کمکشون کنیم . . .
سلام و با تشکر از همه دوستان
بله...
همون طور که شما فرمودید میخوام توی محیط متنی دکمه فشرده شد این برنامه اجرا شه
این برنامه با VB نوشته شده و پسوندش exe است
1 text box داره
درون فرم زمانی هم که بک اپپیس رو میزنم ترجمه میکنه و در msg box نمایش میده
نمیدونم باید چی کار کنم زمانی که تو ویندور type می کنم بک اسپسو زدم
msg box فرم نمایش بده
این پروزه دانشگاه. اونا از من خواستن حتما بک اسپس باشه
.
.
کوچیک همتون "شایان"

bobrus
چهارشنبه 19 دی 1386, 15:32 عصر
سلام
روشی که همه دیکشنری ها دارن اینه که اول برنامشون اجرا میشه یا توسط کاربر ویا توی استارت آپ به طور اتوماتیک پس بهتره شما هم این کار رو بکنی برای خواندن کلید هم حالا هرچی باشه فرق نمی کنه می تونی از همون api ای که آقای lsass.crc32 گفته استفاده کنی(GetAsyncKeyState) حتماً جواب می ده

مبین رنجبر
چهارشنبه 19 دی 1386, 15:41 عصر
درسته .. همون طور که جناب bobrus گفتند بهترین روش همینه

مبین رنجبر
چهارشنبه 19 دی 1386, 16:59 عصر
سلام ... این سورس که اینجا گذاشتمو همین الان واست نوشتم که کاری که شما میخواین رو انجام میده ..

برنامه رو اجرا کنید و بعد برید برنامه وورد رو بالا بیارید و بعد کلید بک اسپیس بزنید مشاهده میکنید که برنامه ماشین حساب ویندوز رو بالا میاره..

حالا میتونی به جای ماشین حساب برنامه خودتو بالابیاری

DoctorJay
چهارشنبه 19 دی 1386, 17:08 عصر
دوستان عزیز از این نظر مشکل دوستمون حله (چگونگیه Active شدن -- استارتآپ).

مشکلی که ایشون آلان دارن اینکه چه توی محیط متنی و چه غیر اون ,

وقتی که دکمه ی BckSpc زده میشه برنامه به حالت فعال در میاد !

راهی که من به ذهنم میرسه اینکه قبل از فعال شدنه برنامه بیاد و چک کنه که برنامه های

Word , WordPad , NotePad و مشابه اینا در حال اجرا هستن یا نه !! که البته بنظر مبتدیانه است

خلاصه اینکه مسئله اینست , بودن در محیط متنی یا نبودن در محیط متنی . . .

مبین رنجبر
چهارشنبه 19 دی 1386, 17:14 عصر
خوب DoctorJay جان مثله اینکه سورسی که من گذاشتمو ندیدی .. خوب همین کاری که این دوستمون میخواد انجام بده رو انجام میده .. چه تو محیط ویندوز باشه چه توی هر محیطی

DoctorJay
چهارشنبه 19 دی 1386, 17:48 عصر
آخه میخواد فقط توی محیط متنی باشه , نه توی ویندوز .

من که اینجوری متوجه شدم ...

مبین رنجبر
چهارشنبه 19 دی 1386, 19:47 عصر
خوب سورسی که من گذاشتم توی محیط متنی هم جواب میده

DoctorJay
چهارشنبه 19 دی 1386, 23:05 عصر
درسته . ولی نمی خواد و نباید وقتی توی محیط متنی نیست برنامش با BckSpc اجرا بشه .

فقط توی محیط متنی , فقط

مبین رنجبر
پنج شنبه 20 دی 1386, 09:36 صبح
آها .. خوب این که نمیشه .. هزاران محیط متنی توی کامپیوتر هست .. نمیتونه اجرا بودن همهشون رو چک کنه که .. فوقش بتونه توی وورد همچین کاری کنه

DoctorJay
پنج شنبه 20 دی 1386, 10:00 صبح
آره منم یه راه غیر استاندارد رو گفتم .

که بیاد و پروسس رو چک کنه که برنامه های متنی معروف در حال اجرا هستن یا نه

اگه بودن BckSpc کار تعیین شدرو انجام بده .

حالا نمی دونم پروژشون یه پروژه ی جدیه یا همینجوریه !

باید بره ببینه استاده چجوری تستش می کنه, برنامشو بر اساس اون بسازه ...

مبین رنجبر
پنج شنبه 20 دی 1386, 10:40 صبح
آخه برنامه های متنی یکی دوتا نیستند که بخواد پروسسشون رو چک کنه

atlantic_nights
پنج شنبه 20 دی 1386, 18:41 عصر
ما خیر سرمون ترم یکیم

مبین رنجبر
پنج شنبه 20 دی 1386, 18:45 عصر
یعنی چی ترم یکی ؟

DoctorJay
پنج شنبه 20 دی 1386, 20:51 عصر
آخه برنامه های متنی یکی دوتا نیستند که بخواد پروسسشون رو چک کنه

واسه همین گفتم مبتدیانست !

همون راه استادو پیشبینیه چک کردن استادرو انجام بده به نفعشه !!

ترم یکه منظورش اینکه این کار سخته واسش !! آره ؟؟

مبین رنجبر
جمعه 21 دی 1386, 10:04 صبح
والا این بحثی رو ایشون مطرج کردند نمیشه کسی که ترم یک هست پیاده کنه .. این بحثش یه کو واسه ترم یکی ها سنگینه

atlantic_nights
یک شنبه 23 دی 1386, 12:32 عصر
این تایپیک و پاک کنم؟
میدونید چرا این سوال کردم؟
چون این تاپیکو ادرسشو جایی دیگه دیده بودم برای همین سوال کردم

bobrus
یک شنبه 23 دی 1386, 12:42 عصر
نه حیفه بعد اینهمه جواب تاپیک حذف بشه بهتره آدرس اون تاپیک هم اینجا قرار بدی تا کسایی که میان این تاپیک رو دنبال می کنن به اونم بتونن سر بززن اینجوری بهتره

kuh_nur
پنج شنبه 11 بهمن 1386, 10:53 صبح
سلام
من تازه اومدم (واسه خودم متاسفم )
اما میشه این کارو با روشی که می گم انجام داد:
1- اول باید برنامه تو حافظه لود شه
2- بعد از یک تابع با کامپانت مربوط به هات کی (HOT KEY) استفاده کن
فک کنم اینجوری بشه این کارو انجام داد ( فک کنم مبتدیانه بود )

bobrus
پنج شنبه 11 بهمن 1386, 11:08 صبح
دوست عزیز این تاپیک به نتیجه رسیده و اگه خوب تاپیک ها رو بخونی متوجه میشی چه کار کرده اون وقت اینارو نمی نوشتی