winemac: Convert main thread to Cocoa main loop on process attach.
[wine] / dlls / rstrtmgr / main.c
1 /*
2  * Copyright 2010 Louis Lenders
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17  */
18
19 #include "config.h"
20 #include <stdarg.h>
21
22 #include "windef.h"
23 #include "winbase.h"
24 #include "wine/debug.h"
25
26 #include "restartmanager.h"
27
28 WINE_DEFAULT_DEBUG_CHANNEL(rstrtmgr);
29
30 /*****************************************************
31  *      DllMain
32  */
33 BOOL WINAPI DllMain( HINSTANCE hinst, DWORD reason, LPVOID reserved )
34 {
35     TRACE("(%p, %d, %p)\n", hinst, reason, reserved);
36
37     switch(reason)
38     {
39     case DLL_WINE_PREATTACH:
40         return FALSE;  /* prefer native version */
41
42     case DLL_PROCESS_ATTACH:
43         DisableThreadLibraryCalls( hinst );
44         break;
45
46     case DLL_PROCESS_DETACH:
47         break;
48     }
49     return TRUE;
50 }
51
52 /***********************************************************************
53  * RmGetList (rstrtmgr.@)
54  *
55  * Retrieve the list of all applications and services using resources registered with the Restart Manager session
56  */
57 DWORD WINAPI RmGetList(DWORD dwSessionHandle, UINT *pnProcInfoNeeded, UINT *pnProcInfo,
58                                       RM_PROCESS_INFO *rgAffectedApps[], LPDWORD lpdwRebootReasons)
59 {
60     FIXME("%d, %p, %p, %p, %p stub!\n", dwSessionHandle, pnProcInfoNeeded, pnProcInfo, rgAffectedApps, lpdwRebootReasons);
61     return ERROR_CALL_NOT_IMPLEMENTED;
62 }
63
64 /***********************************************************************
65  * RmRegisterResources (rstrtmgr.@)
66  *
67  * Register resources for a Restart Manager session
68  */
69 DWORD WINAPI RmRegisterResources(DWORD dwSessionHandle, UINT nFiles, LPCWSTR rgsFilenames[],
70                                                      UINT nApplications, RM_UNIQUE_PROCESS *rgApplications,
71                                                      UINT nServices, LPCWSTR rgsServiceNames[])
72 {
73     FIXME("%d, %d, %p, %d, %p, %d, %p stub!\n", dwSessionHandle, nFiles, rgsFilenames,
74               nApplications, rgApplications, nServices, rgsServiceNames);
75     return ERROR_CALL_NOT_IMPLEMENTED;
76 }
77
78 /***********************************************************************
79  * RmStartSession (rstrtmgr.@)
80  *
81  * Start a new Restart Manager session
82  */
83 DWORD WINAPI RmStartSession(DWORD *sessionhandle, DWORD flags, WCHAR sessionkey[])
84 {
85     FIXME("%p, %d, %p stub!\n", sessionhandle, flags, sessionkey);
86     return ERROR_CALL_NOT_IMPLEMENTED;
87 }
88
89 /***********************************************************************
90  * RmRestart (rstrtmgr.@)
91  */
92 DWORD WINAPI RmRestart(DWORD handle, DWORD flags, void *fnstatus)
93 {
94     FIXME("%u, 0x%08x, %p stub!\n", handle, flags, fnstatus);
95     return ERROR_CALL_NOT_IMPLEMENTED;
96 }
97
98 /***********************************************************************
99  * RmEndSession (rstrtmgr.@)
100  */
101 DWORD WINAPI RmEndSession(DWORD handle)
102 {
103     FIXME("%u stub!\n", handle);
104     return ERROR_CALL_NOT_IMPLEMENTED;
105 }