[C] Programm verzöger anfangen lassen?

mmp05

Ensign
Dabei seit
Okt. 2005
Beiträge
209
Ich suche eine Möglichkeit ein C programm Zeitverzögert anfangen zu lassen.

Das Programm soll ca. 4 Sekunden nach start des Programms gestartet werden:

Das muss doch irgendwie so gehen:

sleep(XXX);
oder
wait(XXX);
oder
system("sleep(XXX)");

Ich finde da einfach nix zu
Welche Headerdatei muss ich dabei beachten?

Es soll dabei beachtet werden, dass es auf allen Windows rechner GLEICH funktioniert
-> ich hatte einen lösungsweg mit einer Schleife gesehn, welche ca. 1000000 durchläuft ... was jedoch bei einigen Rechnern schneller als auf anderen passiert.
 

Rasemann

Banned
Dabei seit
Juli 2006
Beiträge
2.760
Jo, systemzeit abfragen, 4 sekunden warten, laufen lassen.
Oder ganz patschert, ein "Starterprogramm" das 4 sec wartet und dann das andere Programm lädt......
Ist das nicht oft so?
 

Arnd

Lieutenant
Dabei seit
Jan. 2005
Beiträge
926
Bei WaitForSingleObject() kann man eine Timeoutzeit angeben. Details siehe Hilfe.
Sleep oder so sollte es aber auch geben.

MfG

Arnd
 

daemon777

Lt. Commander
Dabei seit
Dez. 2003
Beiträge
1.371
Jo mit Sleep und system geht es auch. Dafür brauchste nur die windows Bibliothek. ("windows.h"). Damit hällt das Programm dann einfach an. Dann kannste es ja wie beriets weiter oben beschrieben machen.
 

muckelzwerg

Lt. Junior Grade
Dabei seit
Mai 2006
Beiträge
460
Hm, nach was googelst Du denn? Vielleicht können wir Dir da ja helfen.
Wenn ich das für mein System (Linux) suchte, würde ich folgendes machen:
google - "c sleep"
(http://www.google.de/search?hl=de&q=c+sleep&)
Der erste Treffer führt dann hier hin:
http://www.delorie.com/gnu/docs/glibc/libc_445.html
Das reicht dann eigentlich schon.
Wenn ich es noch ganz genau wissen will, würde ich noch nach der in Zeile
3 unter "function" erwähnten "unistd.h" bei google suchen.
Da führt der erste Treffer dann zur opengroup.
(http://www.opengroup.org/pubs/online/7908799/xsh/unistd.h.html)
Auf der Seite findet sich dann auch ein Link zur sleep() Funktion.
http://www.opengroup.org/pubs/online/7908799/xsh/sleep.html

mfG

-- -- muckelzwerg
 

muckelzwerg

Lt. Junior Grade
Dabei seit
Mai 2006
Beiträge
460
Aber nur wenn man die entsprechenden Microsoft Produkte verwendet. ;)
Mit der Sleep Funktion aus der Winapi bin ich unter Linux nicht so zufrieden.
(es sei denn ich hab nen OS-Switch drinn)
Recht hast Du aber, dass man nicht jedes Problem bei Google abladen sollte,
daher ja der Konjunktiv.
Ein "man 3 sleep" reicht auch.

mfG

-- -- muckelzwerg
 

Rain

Lieutenant
Dabei seit
Mai 2003
Beiträge
704
da ich gestern das gleiche problem hatte (bin anfänger):

du musst zunächst die windows.h includen und dann kannst du mit Sleep(xxxx - in millisek) die verzögerung einbauen. es hat bei mir erst dann funktioniert, nachdem ich die funktion von sleep() in Sleep() umgebaut hab -> großes S! ><
 
Top