Re[2]: Запуск ДОС-программы и переопределение консольного вв
От: indlG0  
Дата: 13.04.06 13:30
Оценка:
Ошибся вот етот код работает:

STARTUPINFOA        syst;
PROCESS_INFORMATION prc;
OFSTRUCT            of;
SECURITY_ATTRIBUTES sa;


GetStartupInfo(&syst);

ZeroMemory(&sa, sizeof(sa));
sa.bInheritHandle = TRUE;
        
HANDLE  h1 = CreateFile("D:\\testing\\out",
            GENERIC_WRITE,
            FILE_SHARE_WRITE,
            &sa,
            CREATE_ALWAYS,
            FILE_ATTRIBUTE_NORMAL | FILE_FLAG_WRITE_THROUGH,
            NULL);

HANDLE  h2 = CreateFile("D:\\testing\\in",
            GENERIC_READ,
            FILE_SHARE_READ,
            &sa,
            OPEN_EXISTING,
            FILE_ATTRIBUTE_NORMAL,
            NULL);
        
ZeroMemory(&syst,sizeof(STARTUPINFO));    
syst.cb         = sizeof(STARTUPINFO);            
syst.dwFlags    = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES; 
syst.hStdInput  = h2;
syst.hStdOutput = h1;
        
CreateProcess("D:\\testing\\n.exe", 
              0, 0, 0, TRUE, 
              REALTIME_PRIORITY_CLASS, 
              0, 0, 
              &syst, 
              &prc);

WaitForSingleObject( prc.hProcess, INFINITE );

CloseHandle(h2);
CloseHandle(h1);
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.