View Full Version : سوال: غیر فعال کردن منوی save و save as
ahmad_roushan
یک شنبه 14 تیر 1388, 10:17 صبح
با سلام
من می خواهم از یک برنامه در حال اجرا که برنامه خودم نیست (مثلا photoshop) منوی save و save as رو غیر فعال کنم .
از دوستان خواهش می کنم اگر کسی اطلاعاتی در این زمینه داره منو راهنمایی کنه .
ahmad_roushan
سه شنبه 30 تیر 1388, 09:08 صبح
سلام به همه
مثل اینکه کسی نیست که جواب منو بده
خب من این کد ها رو نوشتم
HWND hw;
hw=GetForegroundWindow();
::HMENU menuInfo;
menuInfo=::GetMenu(hw);
::HMENU subMenuInfo;
subMenuInfo=::GetSubMenu(menuInfo,0);
BOOL resultOfEnable;
::UINT menuItemId;
menuItemId =::GetMenuItemID(subMenuInfo ,0);
resultOfEnable=::EnableMenuItem(menuInfo, menuItemId ,MF_DISABLED );
ولی اشاره گر منو همیشه صفر بر گردونده میشه .
لطفا راهنمایی کنید .
mehdi.mousavi
چهارشنبه 31 تیر 1388, 23:16 عصر
سلام به همه
مثل اینکه کسی نیست که جواب منو بده
خب من این کد ها رو نوشتم
HWND hw;
hw=GetForegroundWindow();
::HMENU menuInfo;
menuInfo=::GetMenu(hw);
::HMENU subMenuInfo;
subMenuInfo=::GetSubMenu(menuInfo,0);
BOOL resultOfEnable;
::UINT menuItemId;
menuItemId =::GetMenuItemID(subMenuInfo ,0);
resultOfEnable=::EnableMenuItem(menuInfo, menuItemId ,MF_DISABLED );
ولی اشاره گر منو همیشه صفر بر گردونده میشه .
لطفا راهنمایی کنید .
سلام.
چه تضمینی هستش که GetForegroundWindow به شما Handle به پنجره مورد نظرتون رو بده؟ این API، هندل به Window ای رو بر میگردونه که در حال کار باهاش هستید!
جای GetForegroundWindow، از FindWindow استفاده کنید. دقت کنید که GetMenu، فقط Handle به منو رو در صورتی بهتون برمیگردونه که برنامه مورد نظر منو داشته باشه، Child Window نباشه، Floating Menu Bar هم نباشه! به این نکات حتما دقت کنید.
ahmad_roushan
پنج شنبه 01 مرداد 1388, 10:35 صبح
ممنون از جوابتون
این تمام برنامه نیست ، قسمتی که پنجره مورد نظر رو پیدا می کنه ننوشتم ، ولی میدونم handle که اونو درست پیدا کردم (مثلا میتونم title اونو تغییر بدم ) ، این برنامه هم مثلا واسه notepad اشاره گر منو رو درست بر میگردونه (مثلا میتونم منوی notepad رو نابود ( destroy ) کنم) ولی واسه برنامه دیگه ای کار نمی کنه ، ممنون میشم اگه بررسی کنید .
DLL_DLL
دوشنبه 12 مرداد 1388, 21:52 عصر
میشه کد کاملتو اینجا هم بذاری ما استفاده کنیم ؟ ! :قلب:
ahmad_roushan
سه شنبه 13 مرداد 1388, 12:12 عصر
نتونستم درستش کنم .
یه تکه کد نوشتم واسه میذارمش ، ولی فقط واسه notepad جواب میده .
اگه کسی میتونه لطفا راهنمایی کنه
DLL_DLL
سه شنبه 13 مرداد 1388, 16:54 عصر
روی یکسری برنامه های دیگه هم کار میده! Photoshop من Cs4 هست Titebar نداره که بخوام روش تست کنم!
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.