/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
20 sekunder delay?
Fra : Ronaldo


Dato : 14-09-04 18:41

Jeg vil gerne gemme en log fil med nogle informationer.
Hvordan laver jeg et "delay" så der går 20 sekunder hver gang den logger?



 
 
Mogens Hansen (14-09-2004)
Kommentar
Fra : Mogens Hansen


Dato : 14-09-04 19:24


"Ronaldo" <freddie@brnet.dk> wrote:
> Jeg vil gerne gemme en log fil med nogle informationer.
> Hvordan laver jeg et "delay" så der går 20 sekunder hver gang den logger?

Hvilken platform er det på ?
F.eks. MS-Window, Linux, flere samtidige

Venlig hilsen

Mogens Hansen



Ronaldo (14-09-2004)
Kommentar
Fra : Ronaldo


Dato : 14-09-04 20:17


"Mogens Hansen" <mogens_h@dk-online.dk> skrev i en meddelelse
news:ci7d4s$37q$1@news.cybercity.dk...

> Hvilken platform er det på ?
> F.eks. MS-Window, Linux, flere samtidige

dos?



Bertel Brander (14-09-2004)
Kommentar
Fra : Bertel Brander


Dato : 14-09-04 20:28

Ronaldo wrote:

> "Mogens Hansen" <mogens_h@dk-online.dk> skrev i en meddelelse
> news:ci7d4s$37q$1@news.cybercity.dk...
>
>
>>Hvilken platform er det på ?
>>F.eks. MS-Window, Linux, flere samtidige
>
>
> dos?
>
>

"Rigtig" DOS, eller en konsol under Windows?
I det sidste tilfælde kan du bruge Windows modellen.
Ellers må vi vide hvilken kompiler.


--
What's in a name?
That which we call a rose by any other name would smell as sweet.
- Juliet
http://home20.inet.tele.dk/midgaard/

Ronaldo (14-09-2004)
Kommentar
Fra : Ronaldo


Dato : 14-09-04 21:25


"Bertel Brander" <bertel@post4.tele.dk> skrev i en meddelelse
news:41474623$0$166$edfadb0f@dread11.news.tele.dk...

> "Rigtig" DOS, eller en konsol under Windows?
> I det sidste tilfælde kan du bruge Windows modellen.
> Ellers må vi vide hvilken kompiler.

Det er under windows, men jeg vil gerne have det til at fungere i dos.

Jeg bruger Borland 5.5.



Mogens Hansen (14-09-2004)
Kommentar
Fra : Mogens Hansen


Dato : 14-09-04 21:31


"Ronaldo" <freddie@brnet.dk> wrote:

[8<8<8<]
> Det er under windows, men jeg vil gerne have det til at fungere i dos.

Måske blander du begreberne sammen
* DOS: MS-DOS, 16 bit operativ system fra midt 80'erne til tidligt i
90'erne
* Windows console programmer: Windows programmer programmer uden grafisk
brugerflade. Køres ofte fra kommando-promtet

>
> Jeg bruger Borland 5.5.

Den kan ikke lave DOS programmer, men sagtens Windows console programmer.

Venlig hilsen

Mogens Hansen



Ronaldo (14-09-2004)
Kommentar
Fra : Ronaldo


Dato : 14-09-04 21:41


"Mogens Hansen" <mogens_h@dk-online.dk> skrev i en meddelelse
news:ci7kim$cek$1@news.cybercity.dk...

> Den kan ikke lave DOS programmer, men sagtens Windows console programmer.

Okay, tak for hjælpen.



Bertel Brander (14-09-2004)
Kommentar
Fra : Bertel Brander


Dato : 14-09-04 19:57

Ronaldo wrote:
> Jeg vil gerne gemme en log fil med nogle informationer.
> Hvordan laver jeg et "delay" så der går 20 sekunder hver gang den logger?
>
>

Windows:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/sleep.asp

Linux/Unix og andre posix systemer:
http://www.hmug.org/man/3/sleep.html

--
What's in a name?
That which we call a rose by any other name would smell as sweet.
- Juliet
http://home20.inet.tele.dk/midgaard/

Leo Havmøller (15-09-2004)
Kommentar
Fra : Leo Havmøller


Dato : 15-09-04 05:42

"Ronaldo" <freddie@brnet.dk> wrote in message
news:41472d33$0$212$14726298@news.sunsite.dk...
> Jeg vil gerne gemme en log fil med nogle informationer.
> Hvordan laver jeg et "delay" så der går 20 sekunder hver gang den logger?

ULONG StartTime;

StartTime = GetTickCount();

.... lav et eller andet fornuftigt, f.eks. check for keypress...

if (GetTickCount()-StartTime > 20000)
{
20 sekunder er gået.
}

Leo Havmøller.



Niels Dybdahl (15-09-2004)
Kommentar
Fra : Niels Dybdahl


Dato : 15-09-04 08:58

> > Jeg vil gerne gemme en log fil med nogle informationer.
> > Hvordan laver jeg et "delay" så der går 20 sekunder hver gang den
logger?
>
> ULONG StartTime;
>
> StartTime = GetTickCount();
>
> ... lav et eller andet fornuftigt, f.eks. check for keypress...
>
> if (GetTickCount()-StartTime > 20000)
> {
> 20 sekunder er gået.
> }

I DOS gør du noget tilsvarende men kalder interrupt 0x1a med ah=0, så får du
en 32 bit værdi i cx:dx som er antal tics (ca 55 ms). GetTickCount kalder
samme funktion, men GetTickCount ganger selv med 55.
I Windows er Sleep bedre end GetTickCount, da man undgår et busyloop.

Niels Dybdahl



Ronaldo (15-09-2004)
Kommentar
Fra : Ronaldo


Dato : 15-09-04 15:54


"Ronaldo" <freddie@brnet.dk> skrev i en meddelelse
news:41472d33$0$212$14726298@news.sunsite.dk...

[snip]

Det er en ældre borland compiler (3.1).

Jeg skal nok have fat i "t.ti_sec" fra <dos.h>

Hvordan tager jeg 10% af den og smider det ind i en lykke?



Bertel Brander (15-09-2004)
Kommentar
Fra : Bertel Brander


Dato : 15-09-04 19:05

Ronaldo wrote:
> "Ronaldo" <freddie@brnet.dk> skrev i en meddelelse
> news:41472d33$0$212$14726298@news.sunsite.dk...
>
> [snip]
>
> Det er en ældre borland compiler (3.1).
>
> Jeg skal nok have fat i "t.ti_sec" fra <dos.h>
>
> Hvordan tager jeg 10% af den og smider det ind i en lykke?
>
>

BC 3.1's dos.h har også: delay(unsigned milliseconds);
Men det det er en busy loop
I gamle DOS dage kunne man ikke ret meget andet.
Du kan også bruge clock(), der er ANSI.

Er der nogen grund til at bruge version 3.1?

--
What's in a name?
That which we call a rose by any other name would smell as sweet.
- Juliet
http://home20.inet.tele.dk/midgaard/

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408915
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste