-1

如何在非控制台 C++ 应用程序中实现监听器以监听来自 Adob​​e AIR 的标准输入?
在 C# 控制台应用程序中,它看起来像:

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);
                }
            }
        }
    }
}

我需要一个带有APIENTRY winMain()的 C++ 示例 - 启动函数。谢谢。

4

1 回答 1

0

找到了答案。感谢皮特。

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;    
    }
于 2013-04-04T18:59:03.290 回答