在 x86 程序集中使用 win32 api 获取控制台输入

Getting console input with win32 api in x86 assembly

在我的汇编程序中,我从 kernel32 库中调用了 AllocConsole,但是我不知道如何从分配的控制台获取输入。 winapi 是否包含任何函数,可以从当前程序中分配的控制台获取输入?

CALL AllocConsole

ReadConsole 等所有函数都需要一个输入缓冲区,我不知道如何为我分配的控制台获取输入缓冲区,更不用说该函数是否满足我的需要了。

总而言之,winapi中有没有函数可以从程序中分配的控制台获取输入?

谢谢

All of the functions such as ReadConsole require an input buffer, and I do not know how to get the input buffer

您必须调用的函数在 C 语言和汇编语言中是相同的。所以你的问题不是特定于汇编语言的。

您可以使用 GetStdHandle 函数获取标准输入和标准输出句柄。

要获得输入句柄,您必须将常量 STD_INPUT_HANDLE(对于 32 位程序,-10 = 0xFFFFFFF6)作为参数传递给函数。