Gå til innhold

lese stdout fra et annet program


Anbefalte innlegg

jeg trenger og kunne "logge" outputs av et console program.. fra et eksternt "loader" program

 

dette koden blir ett drag-n-drop program som vill starte en hver .exe file som er dratt in i den, og så vill den passe på hvis prosessen krasjer, at den automatisk bli restartet, uten noen "denne prosessen har krasjet, vill du rapportere till Microsoft?" melding, og passe på at prosessen blir startet i "very high priority", og alle console-outputs av det startede programmet vill bli vist gjemmon loaderen's consol vindu...

// Silent Restarter v1.1 by Yurez
#include <windows.h>

int main(int argc, char *argv[])
{
if (argc != 2)
	return 1;

STARTUPINFO si;
PROCESS_INFORMATION pi;

GetStartupInfo(&si);
SetErrorMode(SEM_NOGPFAULTERRORBOX);

while (true)
{
	CreateProcess(argv[1], NULL, NULL, NULL, false,
			HIGH_PRIORITY_CLASS , NULL, NULL, &si, π);
	WaitForSingleObject(pi.hProcess, INFINITE);
}

return 0;
}

 

men noen som vet hvordan den kan alltid logge alle outputs (eller ideelt, de 10-20 siste linjene kun) og når programmet krasjer, largre det permanent, og fortsatt vise alt på console-vinduet?

Endret av Hans_Henrik
Lenke til kommentar
Videoannonse
Annonse

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...