ReactOS
0.4.16-dev-2104-gb84fa49
crt_init.c
Go to the documentation of this file.
1
2
#include <precomp.h>
3
4
extern
int
BlockEnvToEnvironA
(
void
);
5
extern
int
BlockEnvToEnvironW
(
void
);
6
extern
void
FreeEnvironment
(
char
**environment);
7
8
extern
BOOL
msvcrt_init_heap
(
void
);
9
extern
void
msvcrt_init_mt_locks
(
void
);
10
extern
void
msvcrt_init_io
(
void
);
11
12
extern
char
*
_acmdln
;
/* pointer to ascii command line */
13
extern
wchar_t
*
_wcmdln
;
/* pointer to wide character command line */
14
#undef _environ
15
extern
char
**
_environ
;
/* pointer to environment block */
16
extern
char
**
__initenv
;
/* pointer to initial environment block */
17
extern
wchar_t
**
_wenviron
;
/* pointer to environment block */
18
extern
wchar_t
**
__winitenv
;
/* pointer to initial environment block */
19
20
BOOL
21
crt_process_init
(
void
)
22
{
23
OSVERSIONINFOW
osvi
;
24
25
/* initialize version info */
26
osvi
.
dwOSVersionInfoSize
=
sizeof
(
OSVERSIONINFOW
);
27
GetVersionExW
(&
osvi
);
28
_winver
= (
osvi
.
dwMajorVersion
<< 8) |
osvi
.
dwMinorVersion
;
29
_winmajor
=
osvi
.
dwMajorVersion
;
30
_winminor
=
osvi
.
dwMinorVersion
;
31
_osplatform
=
osvi
.
dwPlatformId
;
32
_osver
=
osvi
.
dwBuildNumber
;
33
34
/* create tls stuff */
35
if
(!
msvcrt_init_tls
())
36
return
FALSE
;
37
38
if
(!
msvcrt_init_heap
())
39
return
FALSE
;
40
41
if
(
BlockEnvToEnvironA
() < 0)
42
return
FALSE
;
43
44
if
(
BlockEnvToEnvironW
() < 0)
45
{
46
FreeEnvironment
(
_environ
);
47
return
FALSE
;
48
}
49
50
_acmdln
=
_strdup
(
GetCommandLineA
());
51
_wcmdln
=
_wcsdup
(
GetCommandLineW
());
52
53
/* Initialization of the WINE code */
54
msvcrt_init_mt_locks
();
55
56
//msvcrt_init_math();
57
msvcrt_init_io
();
58
//msvcrt_init_console();
59
//msvcrt_init_args();
60
//msvcrt_init_signals();
61
62
return
TRUE
;
63
}
_acmdln
char * _acmdln
Definition:
environ.c:18
msvcrt_init_io
void msvcrt_init_io(void)
Definition:
file.c:720
msvcrt_init_mt_locks
void msvcrt_init_mt_locks(void)
Definition:
lock.c:66
BlockEnvToEnvironA
int BlockEnvToEnvironA(void)
Definition:
environ.c:34
FreeEnvironment
void FreeEnvironment(char **environment)
Definition:
environ.c:190
msvcrt_init_heap
BOOL msvcrt_init_heap(void)
Definition:
heap.c:830
__initenv
char ** __initenv
Definition:
environ.c:24
__winitenv
wchar_t ** __winitenv
Definition:
environ.c:25
_wenviron
wchar_t ** _wenviron
Definition:
environ.c:23
_wcmdln
wchar_t * _wcmdln
Definition:
environ.c:19
BlockEnvToEnvironW
int BlockEnvToEnvironW(void)
Definition:
environ.c:86
crt_process_init
BOOL crt_process_init(void)
Definition:
crt_init.c:21
_environ
char ** _environ
Definition:
environ.c:22
_strdup
#define _strdup
Definition:
debug_ros.c:7
TRUE
#define TRUE
Definition:
types.h:120
FALSE
#define FALSE
Definition:
types.h:117
GetVersionExW
BOOL WINAPI GetVersionExW(IN LPOSVERSIONINFOW lpVersionInformation)
Definition:
version.c:37
GetCommandLineW
LPWSTR WINAPI GetCommandLineW(void)
Definition:
process.c:1338
GetCommandLineA
LPSTR WINAPI GetCommandLineA(void)
Definition:
process.c:1329
_wcsdup
_ACRTIMP wchar_t *__cdecl _wcsdup(const wchar_t *) __WINE_DEALLOC(free) __WINE_MALLOC
Definition:
wcs.c:81
_winminor
unsigned int _winminor
Definition:
environ.c:12
_winmajor
unsigned int _winmajor
Definition:
environ.c:13
_osver
unsigned int _osver
Definition:
environ.c:11
_winver
unsigned int _winver
Definition:
environ.c:14
msvcrt_init_tls
static BOOL msvcrt_init_tls(void)
Definition:
main.c:43
BOOL
unsigned int BOOL
Definition:
ntddk_ex.h:94
if
if(dx< 0)
Definition:
linetemp.h:194
_osplatform
unsigned int _osplatform
Definition:
environ.c:10
_OSVERSIONINFOA::dwPlatformId
ULONG dwPlatformId
Definition:
rtltypes.h:241
_OSVERSIONINFOA::dwOSVersionInfoSize
ULONG dwOSVersionInfoSize
Definition:
rtltypes.h:237
_OSVERSIONINFOA::dwMajorVersion
ULONG dwMajorVersion
Definition:
rtltypes.h:238
_OSVERSIONINFOA::dwBuildNumber
ULONG dwBuildNumber
Definition:
rtltypes.h:240
_OSVERSIONINFOA::dwMinorVersion
ULONG dwMinorVersion
Definition:
rtltypes.h:239
_OSVERSIONINFOW
Definition:
rtltypes.h:245
osvi
OSVERSIONINFO osvi
Definition:
ver.c:28
OSVERSIONINFOW
struct _OSVERSIONINFOW OSVERSIONINFOW
sdk
lib
crt
misc
crt_init.c
Generated on Tue Jan 6 2026 06:19:11 for ReactOS by
1.9.6