DosSetDateTime: Difference between revisions
Appearance
mNo edit summary |
mNo edit summary |
||
Line 2: | Line 2: | ||
===Syntax=== | ===Syntax=== | ||
DosSetDateTime( ''pdt'' ) | |||
===Parameters=== | ===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. | ;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=== | ===Returns=== | ||
;APIRET rc | |||
:0 NO_ERROR | |||
:327 ERROR_TS_DATETIME | |||
===Relevant Structures=== | ===Relevant Structures=== | ||
Line 35: | Line 31: | ||
===Sample Code=== | ===Sample Code=== | ||
<code> | |||
#define INCL_DOSDATETIME | #define INCL_DOSDATETIME | ||
#include <os2.h> | #include <os2.h> | ||
Line 59: | Line 56: | ||
/* Success */ | /* Success */ | ||
} | } | ||
</code> | |||
===See Also=== | ===See Also=== |
Revision as of 16:25, 9 October 2018
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.
Syntax
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
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].