1 { $O+,F+,I-,S-,R-,V-}
2 Unit MKDos;
3 
4 Interface
5 
GetDosDatenull6 Function GetDosDate: LongInt;
GetDOWnull7 Function GetDOW: Word;
8 
9 Implementation
10 
11 Uses Dos;
12 
GetDosDatenull13 Function GetDosDate: LongInt;
14   Var
15     {$IFDEF WINDOWS}
16     DT: TDateTime;
17     {$ELSE}
18     DT: DateTime;
19     {$ENDIF}
20     DosDate: LongInt;
21     {$IFDEF VirtualPascal}
22     DOW: LongInt;
23     {$ELSE}
24     DOW: Word;
25     {$ENDIF}
26     {$IfDef SPEED}
27     Day, Month, Year: Word;
28     Hour, Min, Sec: Word;
29     {$EndIf}
30 
31   Begin
32 {$IfDef SPEED}
33   GetDate(Year, Month, Day, DOW);
34   GetTime(Hour, Min, Sec, DOW);
35   DT.Day := Day;
36   DT.Month := Month;
37   DT.Year := Year;
38   DT.Hour := Hour;
39   DT.Min := Min;
40   DT.Sec := Sec;
41 {$Else}
42   GetDate(DT.Year, DT.Month, DT.Day, DOW);
43   GetTime(DT.Hour, DT.Min, DT.Sec, DOW);
44 {$EndIf}
45   PackTime(DT, DosDate);
46   GetDosDate := DosDate;
47   End;
48 
49 
GetDOWnull50 Function GetDOW: Word;
51   Var
52     {$IFDEF WINDOWS}
53     DT: TDateTime;
54     {$ELSE}
55     DT: DateTime;
56     {$ENDIF}
57     {$IFDEF VirtualPascal}
58     DOW: LongInt;
59     {$ELSE}
60     DOW: Word;
61     {$ENDIF}
62     {$IfDef SPEED}
63     Day, Month, Year: Word;
64     {$EndIf}
65 
66   Begin
67 {$IfDef SPEED}
68   GetDate(Year, Month, Day, DOW);
69   DT.Year := Year;
70   DT.Month := Month;
71   DT.Day := Day;
72 {$Else}
73   GetDate(DT.Year, DT.Month, DT.Day, DOW);
74 {$EndIf}
75   GetDOW := DOW;
76   End;
77 
78 
79 End.
80