【发布时间】:2011-07-29 05:58:06
【问题描述】:
我正在使用
process.Start();
启动批处理文件。 CMD 窗口看起来很好并且运行良好。如何以编程方式禁用 cmd 窗口右上角的控制框(最小化、最大化、关闭)。我希望显示 CMD 窗口,但防止用户使用 X 按钮关闭它。
谢谢!
【问题讨论】:
-
好问题,我希望可以做到,但我不这么认为。可能唯一且不好的选择是拥有一个将 std in/out 重定向到它并为您模拟控制台窗口的应用程序。
-
仅仅禁用关闭按钮不会阻止用户关闭它。 Ctrl+C 是另一种方式,以及右键单击任务栏图标或使用任务管理器。您的应用程序是如何设置的?你到底想做什么?您也许可以使用
SetConsoleCtrlHandler。 -
这完全没有意义,用户有办法关闭无法停止的窗口。停止像白痴一样对待您的用户,他们会通过让程序运行来回报他们的青睐。
-
“停止像白痴一样对待你的用户......” - LOL
-
如果你想在其他进程窗口中拥有绝对控制权而不被黑客入侵,也许你可以尝试其他解决方案:解析批处理文件并将其翻译成c#命令或直接使用c#脚本来做你想做的事.实施其中一种解决方案可能比黑客攻击需要更多时间,但至少它“更干净”。
标签: c# cmd process.start controlbox