DosSetDateTime: Difference between revisions
Appearance
m Martini moved page OS2 API:DosSetDateTime to OS2 API:CPI:DosSetDateTime |
|
(No difference)
|
Revision as of 15:20, 16 May 2016
DosSetDateTime
Syntax
rc = DosSetDateTime( pdt );
Parameters
- PDATETIME pdt (input)
- The pointer to a DATETIME structure containing the date and time to be set as the system's date and time.
Returns
APIRET rc 0 NO_ERROR 327 ERROR_TS_DATETIME
Include Info
#define INCL_DOSDATETIME #include <os2.h>
Usage Explanation
DosSetDateTime sets the current date and time for the system. Although you can set day, month, year and weekday to whatever you want, DosSetDateTime will check if it is a correct combination and will return an error if it is incorrect.
Relevant Structures
typedef struct _DATETIME { UCHAR hours; /* 0..23 */ UCHAR minutes; /* 0..59 */ UCHAR seconds; /* 0..59 */ UCHAR hundredths; /* 0..99, 1/100 s */ UCHAR day; /* 0..31 */ UCHAR month; /* 0..12 */ USHORT year; SHORT timezone; /* Difference in minutes between current time zone and */ /* GMT. > 0 west of Greenwich */ UCHAR weekday; /* 0..6 0=Sunday */ } DATETIME, *PDATETIME;
Gotchas
The sign of the time zone is opposed to that ordinarily used. Ie GMT+1 (Western Europe) <=> -60
Sample Code
#define INCL_DOSDATETIME #include <os2.h> DATETIME dt; dt.hours=12; dt.minutes=34; dt.seconds=56; dt.hundredths=78; dt.day=8; dt.month=7; dt.year=1996; dt.timezone=-60; /* West Europe */ dt.weekday=1; /* Monday */ if(DosSetDateTime(&dt)) /* Set time to 12:34:56.78, Monday July 8, 1996 */ /* somewhere in western Europe */ { /* Failure */ } else { /* Success */ }
See Also
Alternative Version
- OS2Linux project (Common Public License) created a clone for this function [1].