Как я могу внедрить слушатель в не консольное приложение C ++ для прослушивания стандартного ввода из Adobe 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);
}
}
}
}
}
Мне нужен пример в C ++ с APIENTRY winMain () — пусковая функция.
Благодарю.
Нашел ответ. Спасибо Питу.
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;
}
Других решений пока нет …