有没有人知道如何禁用从C程序创建的.exe
可执行文件在Windows控制台窗口上的关闭按钮?如何禁用C中的关闭按钮?
回答
如果你想禁用正在运行的程序中的按钮,有方法可以做到这一点。
原理是找到窗口,然后找到窗口内的按钮,然后发送一个WM_DISABLE消息给按钮。
#define _WIN32_WINNT 0x0500
#include <stdio.h>
#include <windows.h>
int main(int argc, _TCHAR* argv[]){
HWND h;
HMENU sm;
int i, j, c;
LPTSTR buf;
// get the handle to the console
h = GetConsoleWindow();
// get handle to the System Menu
sm = GetSystemMenu(h, 0);
// how many items are there?
c = GetMenuItemCount(sm);
j = -1;
buf = (TCHAR*) malloc (256 *sizeof(TCHAR));
for (i=0; i<c; i++) {
// find the one we want
GetMenuString(sm, i, buf, 255, MF_BYPOSITION);
if (!strcmp(buf, "&Close")) {
j = i;
break;
}
}
// if found, remove that menu item
if (j >= 0)
RemoveMenu(sm, j, MF_BYPOSITION);
return 0;
}
我没有设置测试这个,所以+1假设它有效。我不知道你可以像那样抓住控制台窗口的手柄。 – Mysticial 2012-08-17 08:17:33
没有工作,请尝试在线编译器:cmpe150-1.cmpe.boun.edu.tr/ – user1590836 2012-08-17 08:17:41
对不起,它的工作原理。我只是写了其他代码befor此 – user1590836 2012-08-17 08:20:10
- 1. 如何禁用excel关闭按钮?
- 2. DockPanel禁用关闭按钮
- 3. Form.GotFocus禁用关闭按钮
- 4. 在Install4J中禁用关闭按钮
- 5. 如何使用wxpython禁用OSX中的窗口关闭按钮?
- 6. ExtJS的 - 禁用Ext.window.Window关闭按钮
- 7. 如何禁用对话框中的关闭按钮
- 8. 如何禁用UIAlertController按动作按钮时自动关闭
- 9. 在关闭按钮上禁用验证
- 10. 如何使用C#编码在Windows窗体中禁用关闭按钮
- 11. 在C中使用关闭按钮#
- 12. 如何禁用图上的关闭按钮
- 13. 如何禁用Windows上的Perl/Tk窗口关闭('X')按钮
- 14. 当关闭按钮被禁用时关闭表格程序
- 15. 如何关闭变量中的按钮?
- 16. 我如何知道NSWindow是使用关闭按钮关闭的?
- 17. Unity通用关闭按钮C#
- 18. 禁用java JFace对话框中的关闭按钮?
- 19. 禁用windows窗体中的关闭按钮
- 20. 禁用XP中的安装程序关闭按钮
- 21. lytebox中的关闭按钮
- 22. tabControl中的关闭按钮
- 23. SimpleModal - 用关闭按钮关闭iframe
- 24. 在asp.net应用程序中禁用浏览器关闭按钮?
- 25. 如何在用户选择关闭按钮时关闭舞台?
- 26. 如何关闭Onclick按钮的ID?
- 27. 如何关闭某些天的按钮
- 28. 用关闭按钮Slidetoggle - jQuery
- 29. Firebug关闭按钮
- 30. fancybox-3关闭按钮禁用/启用延迟不起作用
你不能。控制台窗口是一个独立的组件。唯一的办法是在你有自己的窗口控制的地方建立GUI程序。 – Mysticial 2012-08-17 08:07:44
另外,你为什么要这样做? – Mysticial 2012-08-17 08:08:45
我只是想对我的兄弟做一个恶作剧。但我必须确保他会吓坏了。你知道我可以用其他方式吗?顺便说一句,我唯一的编程语言是c,不幸的是 – user1590836 2012-08-17 08:12:14