title image


Smiley Re: DOS-Commands ohne DOS-Fenster abschicken und ...
Du müsstest dein Program mit CreateProcess(...) aufrufen.Wenn du si.wShowWindow auf SW_HIDE setzt ist das Fensternicht sichtbar.Gibts du in si.hStdOutput ein HANDLE auf eine Pipean dann werden alle Bildschirmausgaben in deine Pipe geschrieben die du dann auslesen kannst.//**************************************************STARTUPINFO si; PROCESS_INFORMATION pi; memset(&si,0,sizeof(si));memset(&pi,0,sizeof(pi));si.cb =sizeof(si); // Fenster nicht sichtbarsi.dwFlags|=STARTF_USESHOWWINDOW;si.wShowWindow=SW_HIDE;// Ausgabe umleitenHANDLE pipe_wr,pipe_rd;CreatePipe(pipe_rd,pipe_wr,0,0);si.dwFlags|=STARTF_USESTDHANDLES;si.hStdOutput=pipe_wr; // Mit // ReadFile(pipe_rd , buffer , 123 , ... )// Kannst du die Bildschirm ausgaben lesenCreateProcess(progamm_path,command_line,0,0,TRUE,CREATE_DEFAULT_ERROR_MODE,0,0,&si,&pi);// Warte auf Programmende// WaitForSingleObject(pi.hProcess,INFINITE);// GetExitCodeProcess (pi.hProcess, &retval);// CloseHandle (pi.hProcess);

Schöne Grüße Anton 

Meine Webseite



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: