Rediriger StdOut ?

kod32 Messages postés 46 Date d'inscription mercredi 5 mai 2004 Statut Membre Dernière intervention 13 novembre 2004 - 7 mai 2004 à 16:15
mirlaine Messages postés 32 Date d'inscription samedi 9 août 2003 Statut Membre Dernière intervention 24 août 2005 - 7 mai 2004 à 18:00
Salut,

je souhaiterais traiter l'affichage d'un prog en console (win sous visual), j'ai vu qu'on pouvait rediriger un flux stadard avec SetStdHandle vers un handle...
J'aimerais rediriger ce flux vers une variable pour pouvoir la traiter ensuite... Est-ce possible ?

Merci

1 réponse

mirlaine Messages postés 32 Date d'inscription samedi 9 août 2003 Statut Membre Dernière intervention 24 août 2005
7 mai 2004 à 18:00
salut
c'est tou a fait possible
tu fai un GetStartupInfo(LPSTARTUPINFO lpStartupInfo);
HANDLE in
HANDLE out

Result = CreatePipe(lpStartupInfo->hStdInput, &in, &secu, 0);
Result = CreatePipe(lpStartupInfo->hStdOutput, &out, &secu, 0);

while(PeekNamedPipe(in, Buffer, sizeof(Buffer), &BytesRead, NULL, NULL))
{
DWORD BufferCnt, BytesToWrite;
BYTE PrevChar = 0;

if(BytesRead > 0)
{
ReadFile(in, Buffer, sizeof(Buffer), &BytesRead, NULL);
}
else
{
Sleep(10);
continue;
}

DisconnectNamedPipe(in);
CloseHandle(in);
DisconnectNamedPipe(out);
CloseHandle(out);

ca ressemble a ca
ya un bon exemple dan les source de netcat
a+
0
Rejoignez-nous