2017-11-10 275 views

回答

0

實現此目的的方法有很多種,但着名的兩種方法是WriteConsoleWriteFile

從MSDN文檔:

WriteConsole

寫入一個字符串在 當前光標位置開始一個控制檯屏幕緩衝器。

BOOL WINAPI WriteConsole(
    _In_    HANDLE hConsoleOutput, 
    _In_  const VOID *lpBuffer, 
    _In_    DWORD nNumberOfCharsToWrite, 
    _Out_   LPDWORD lpNumberOfCharsWritten, 
    _Reserved_  LPVOID lpReserved 
); 

WriteFile的

將數據寫入指定的文件或輸入/輸出(I/O)設備。這個功能是爲同步和異步操作而設計的。

BOOL WINAPI WriteFile(
    _In_  HANDLE  hFile, 
    _In_  LPCVOID  lpBuffer, 
    _In_  DWORD  nNumberOfBytesToWrite, 
    _Out_opt_ LPDWORD  lpNumberOfBytesWritten, 
    _Inout_opt_ LPOVERLAPPED lpOverlapped 
); 

...
...
字符可以被寫入到使用WriteFile的一個 手柄控制檯輸出屏幕緩衝區。該功能的確切行爲是由控制檯模式確定的 。數據寫入當前的光標位置 。在寫入 操作後更新光標位置。