2010-06-26 65 views
1

我們是否可以更改/增加控制檯輸出的大小,以便一次查看控制檯應用程序中的大量數據?增加控制檯輸出顯示的大小

+0

代碼?還是親自動手? – 2010-06-26 13:32:37

+0

我會對代碼部分感興趣 – nus 2010-06-26 14:49:15

+0

@Kate我想用代碼做這件事,所以這個改變是暫時的。 – Carl17 2010-06-27 03:34:34

回答

0

似乎有不同的方式來羅馬:

  1. 這應該是推薦的方式,我會認爲,導致名字說明了一切:GetConsoleWindow足以證明here

  2. 快速入侵可能是windows API函數SendInput。如果您模擬Alt + Enter,則可以全屏顯示活動窗口。

  3. Here是使用API​​調用從user32.dll中

0

退房的SetConsoleScreenBufferInfoEx API提出了一些建議。它需要一個CONSOLE_SCREEN_BUFFER_INFOEX作爲輸入,並有一個dwSize成員,其中包含控制檯屏幕緩衝區的大小,字符列和行

MSDN爲SetConsoleScreenBufferInfoEx功能:http://msdn.microsoft.com/en-us/library/ms686039(v=VS.85).aspx

0

我曾經用一個小的黑客工具,首先設置控制檯輸出緩衝區,然後試圖找到控制檯窗口,並調整其大小。它在XP上運行良好,我從未在較新的Windows版本上測試它。

HANDLE h = GetStdHandle(STD_OUTPUT_HANDLE); 
SMALL_RECT sr; 
sr.Top = 0; 
sr.Left = 0; 
sr.Bottom = 10; 
sr.Right = 79; 
SetConsoleWindowInfo(h, TRUE, &sr); 
TCHAR title[512]; 
GetConsoleTitle(title, 512); 
HWND hWnd = FindWindow(NULL, title); 
if(hWnd != NULL) { 
    HWND hWndInsertAfter = NULL; 
    UINT nFlags = SWP_NOSIZE | SWP_NOZORDER; 
#if 0 // Don't move? 
    nFlags |= SWP_NOMOVE; 
#endif 
    SetWindowPos(hWnd, hWndInsertAfter , 40, 350, 0, 0, nFlags); 
    SetForegroundWindow(hWnd); 
} 
-1

如果您使用命令提示符窗口,請在任務欄上右鍵單擊它的標籤,然後單擊「屬性」選項。

+0

OP明確聲明他正在尋找代碼如何完成此操作,而不是GUI操作 – rootkit 2013-02-15 22:35:39