Eingabeaufforderung ausblenden

budili

Mitglied
Mahlzeit,

ich starte aus meiner Anwendung heraus, ein kleines DOS Progrämmchen,
also ein Kommandozeilen Programm (Eingabeaufforderung).

Man sieht es kurz aufteichen und wieder verschwinden...
Ist es möglich, dieses DOS Programm auszublenden?
Es soll praktisch nicht mehr auftauchen.

Danke
 
Hi, schreibe dir deine kleine Konsolenapplikation doch in eine win32 Anwendung um.

Dort siehst du dann gar kein Fenster und der Portierungsaufwand ist minimal!

Gruß,

Peter
 
Moin,

ja das Problem ist, dass es nicht mein Programm ist und ich auch die Sources
nicht habe. Musste das Programm nur in meins integrieren.

Mehr habe ich nicht bekommen ... bis jetzt :rolleyes:
 
Wenn du das Programm mit "CreateProcess" startest, kannst du festlegen, ob das Programmfenster (in dem Fall die Eingabeaufforderung) angezeigt wird oder nicht.
C++:
CString strCmd = _T("cmd /c <name des programms>");

PROCESS_INFORMATION ProcessInfo;
STARTUPINFO         StartupInfo;

ZeroMemory( &StartupInfo, sizeof( StartupInfo ));
ZeroMemory( &ProcessInfo, sizeof( ProcessInfo ));

StartupInfo.cb          = sizeof(STARTUPINFO);
StartupInfo.dwFlags     = STARTF_USESHOWWINDOW;
StartupInfo.wShowWindow = SW_HIDE;

CreateProcess( NULL,
               (LPTSTR)(LPCTSTR)strCmd,
               NULL,
               NULL,
               FALSE,
               0,
               NULL,
               NULL,
               &StartupInfo,
               &ProcessInfo );
Gruß
MCoder
 
okay, THX.

Da ich die Anwendung mit "System.Diagnostics.Process" arbeite,
habe ich es etwas anders gemacht.

Code:
ProcessStartInfo startInfo = new ProcessStartInfo(string);
startInfo.WindowStyle = ProcessWindowStyle.Hidden;

myProcess = Process.Start(startInfo);

Funktioniert auch. ;-)
 

Neue Beiträge

Zurück