Supportnet Computer
Planet of Tech

Supportnet / Forum / Anwendungen(Java,C++...)

C++ Programm





Frage

Hallo zusammen, wie kann ich bei einem "system" Befehl verhindern, daß eine DOS-Box aufgerufen wird (BCB5). Ich möchte eine Anwendung haben, die nicht den Betrieb der Maschine stört. Programmcode: void __fastcall TForm1::Timer1Timer(TObject *Sender) { system("ping IP >> c:\\test.txt"); system("time /t >> c:\\test.txt"); }

Antwort 1 von Viagra

Hi, blue.

Ich hab wirklich null Ahnung von C++ :o) das ist das einzige von dem ich mal gehört hab.
Es gibt in C++ den Makro WinExec.
Du kannst deinen ping-Befehl mit dem Makro so verpacken:
system ("ping IP >> c:\\test.txt", SW_HIDE);

Wenns nicht funktioniert sag noch mal bescheid, aber ich bin hier mit meinen C++-Kenntnissen am Ende *g*.

Bis denn dann
Der ich

Antwort 2 von blue

Hallo Viagra,

dich gibt es ja wohl auch ohne Rezept.
Just Fun.

Sorry, das ich mich so lange nicht gemeledet habe, aber hatte eine Inbetreibnahme von meinen Programmen und war deswegen verhindert. Vielen Dank für den Tip.
Ich habe das Problem jetzt schon anders gelöst.
Aber es hört sich interessant an - diese Sache mit dem Makro. Ich werde es mal ausprobieren und mit meine Kollegen besprechen. Hast du evtl. einen Programmcode wie das Programm ansatzweise aussehen könnte. Bzw. eine URL oder Onlinehilfe.

MfG

blue

Antwort 3 von hendrikw

Ich fürchte, dass mit dem WinExec ging das letzte Mal unter Windows 3.1, lang ists her.
Eine Lösung für Dein Problem habe ich aber auch nicht. Ich benutze im Übrigen gerne spawn... - Funktionen zum Starten von Programmen.
mfg
Hendrik

Antwort 4 von Viagra

Hups, hab gerade gesehen, dass da ein Fehler in dem Befehl bei mir ist.
Falsch: system ("ping IP >> c:\\test.txt", SW_HIDE);
Das sollte natürlich
WinExec ("ping IP >> c:\\test.txt", SW_HIDE);
heißen -_-#

@hendrikw: WinExec funzt auch noch auf Win2000, ich hatte damit bisher kein Problem. Oder liegt das am Compiler? Hab MS Visual C++ 6.0 und der machts wirklich ohne Probleme.

Antwort 5 von hendrikw

@Viagra: Liegt wahrscheinlich am Compiler; blue scheint aber was von Borland zu haben und ich hatte bei der Portierung von Windows3.1-Programmen, die WinExec benutzt haben, auf W9x/NT das Problem bei BC5. Seit dem sieht man bei diesen Programmen halt ab und zu mal eine DOS-Box, was in meinem Falle aber nicht stört.
mfg
Hendrik

Antwort 6 von blue

Ich habe einen TC4.5 und einen BCB5 Enter.

Ich werde mal in der Onlinehilfe nach euren Anregungen suchen.

Have a nice day.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: