PDA

View Full Version : سوال: چگونه آبجکت پنجره های باز شده در ویندوز را به دست بیاورم؟



حسین محمدی
دوشنبه 10 فروردین 1388, 11:32 صبح
با سلام

من یک برنامه (یک Application به همراه یک پنجره) را در ویندوز اجرا می کنم و پنجره آن باز است.

در یک برنامه دوم (یک application دیگر) نیاز دارم بدانم آیا پنجره برنامه اول باز است یا خیر؟ (یعنی آیا برنامه اول اجرا شده است یا خیر؟)

چگونه می توانم از اجرا شدن یا اجرا نبودن برنامه اول اطلاع پیدا کنم؟

برنامه اول را خودم ننوشته ام و با زبانی غیر از C نوشته شده است و فقط فایل اجرایی آن در اختیار من است.

mehdi.mousavi
دوشنبه 10 فروردین 1388, 13:07 عصر
با سلام

من یک برنامه (یک Application به همراه یک پنجره) را در ویندوز اجرا می کنم و پنجره آن باز است.
در یک برنامه دوم (یک application دیگر) نیاز دارم بدانم آیا پنجره برنامه اول باز است یا خیر؟ (یعنی آیا برنامه اول اجرا شده است یا خیر؟) چگونه می توانم از اجرا شدن یا اجرا نبودن برنامه اول اطلاع پیدا کنم؟ برنامه اول را خودم ننوشته ام و با زبانی غیر از C نوشته شده است و فقط فایل اجرایی آن در اختیار من است.

سلام.
میتونید از EnumProcesses (http://msdn.microsoft.com/en-us/library/ms682629%28VS.85%29.aspx)استفاده کنید تا snapshot برنامه های موجود در اون لحظه رو بگیرید و ببینید برنامه مورد نظر شما در لیست مزبور وجود داره یا خیر. برای دیدن یک مثال هم میتونید به این آدرس رجوع کنید. (http://msdn.microsoft.com/en-us/library/ms682623%28VS.85%29.aspx)

ace.coder
دوشنبه 10 فروردین 1388, 16:52 عصر
شاید با hook کردن بتونی کلاس ریجیستر برنامه را پیدا کنی!