如何在非控制台C ++应用程序中实现侦听器以侦听来自Adobe AIR的标准输入?
在C#console app中它看起来像:
namespace HelloNativeProcess
{
class Program
{
static void Main(string[] args)
{
using (Stream stdin = Console.OpenStandardInput())
using (Stream stdout = Console.OpenStandardOutput())
{
byte[] buffer = new byte[2048];
int bytes;
while ((bytes = stdin.Read(buffer, 0, buffer.Length)) > 0)
{
stdout.Write(buffer, 0, bytes);
}
}
}
}
}
我需要在C ++中使用 APIENTRY winMain() - 启动函数的示例。 感谢。
答案 0 :(得分:0)
找到答案。感谢Pete。
HANDLE thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)CreateAppThread, (LPVOID)NULL, 0, NULL);
线程功能
BOOL CreateAppThread()
{
hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
hStdin = GetStdHandle(STD_INPUT_HANDLE);
CHAR buffer [2048];
DWORD bytes_read, bytes_written;
while(ReadFile( hStdin, buffer, sizeof(buffer), &bytes_read, NULL))
{
WriteFile(hStdout, buffer, sizeof(buffer), &bytes_written, NULL);
}
return TRUE;
}