是否可以更改编译的命令行程序的背景颜色和标题文本?
我没有源文件。如何更改命令行程序的标题和背景颜色
1
A
回答
1
如果它是一个简单地运行在cli而不使用外部库(如ncurses)的应用程序,它应该相当容易。要做到这一点,你只需要改变终端的颜色。
与自Windows第一版以来的标准command.com终端相比,你只需要使用谷歌。有很多搜索结果,如http://www.daniweb.com/forums/thread15790.html。 使用Windows 7中包含的新Windows Power Shell,解决方案应该完全相同。
如果应用程序使用像ncurses这样的库,则无需进行逆向工程就无法更改颜色。
1
如果您需要在目标程序已经运行后做,你可以从另一个过程中设置的标题和控制台的颜色:
::FreeConsole();
::AttachConsole(pidOfTarget);
::SetConsoleTitle(_T("aaaaaaaaaaa"));
::SetConsoleTextAttribute(
::GetStdHandle(STD_OUTPUT_HANDLE),
BACKGROUND_BLUE | FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_GREEN);
谢谢您的回答。 – T1000 2010-08-14 21:37:52
Windows控制台以及运行在其中的程序是完全不同的东西。另外它不是command.com所指的(我希望),而是cmd.exe – Joey 2010-08-15 08:03:06