[NETAPI32] NetUserEnum, NetUserGetInfo: Get the user privileges and auth flags for...
[reactos.git] / dll / win32 / imagehlp / imagehlp_main.c
1 /*
2 * IMAGEHLP library
3 *
4 * Copyright 1998 Patrik Stridvall
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21 #include <stdarg.h>
22
23 #include "windef.h"
24 #include "winbase.h"
25 #include "imagehlp.h"
26 #include "wine/debug.h"
27
28 /**********************************************************************/
29 DECLSPEC_HIDDEN HANDLE IMAGEHLP_hHeap = NULL;
30
31 /***********************************************************************
32 * DllMain (IMAGEHLP.init)
33 */
34 BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
35 {
36 switch(fdwReason)
37 {
38 case DLL_PROCESS_ATTACH:
39 DisableThreadLibraryCalls(hinstDLL);
40 IMAGEHLP_hHeap = HeapCreate(0, 0x10000, 0);
41 break;
42 case DLL_PROCESS_DETACH:
43 if (lpvReserved) break;
44 HeapDestroy(IMAGEHLP_hHeap);
45 break;
46 }
47 return TRUE;
48 }
49
50 /***********************************************************************
51 * MarkImageAsRunFromSwap (IMAGEHLP.@)
52 * FIXME
53 * No documentation available.
54 */
55
56 /***********************************************************************
57 * TouchFileTimes (IMAGEHLP.@)
58 */
59 BOOL WINAPI TouchFileTimes(HANDLE FileHandle, LPSYSTEMTIME lpSystemTime)
60 {
61 FILETIME FileTime;
62 SYSTEMTIME SystemTime;
63
64 if(lpSystemTime == NULL)
65 {
66 GetSystemTime(&SystemTime);
67 lpSystemTime = &SystemTime;
68 }
69
70 return (SystemTimeToFileTime(lpSystemTime, &FileTime) &&
71 SetFileTime(FileHandle, NULL, NULL, &FileTime));
72 }