Commit 578b7e75 authored by Alexandre Julliard's avatar Alexandre Julliard

dpnet: Convert dll registration to the IRegistrar mechanism.

parent c6f91df4
...@@ -8,10 +8,11 @@ C_SRCS = \ ...@@ -8,10 +8,11 @@ C_SRCS = \
dpnet_main.c \ dpnet_main.c \
lobbiedapp.c \ lobbiedapp.c \
peer.c \ peer.c \
regsvr.c \
server.c \ server.c \
threadpool.c threadpool.c
IDL_R_SRCS = dpnet.idl
RC_SRCS = version.rc RC_SRCS = version.rc
@MAKE_DLL_RULES@ @MAKE_DLL_RULES@
/*
* COM Classes for dpnet
*
* Copyright 2010 Alexandre Julliard
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
[
helpstring("DirectPlay8Client Object"),
threading(both),
uuid(743f1dc6-5aba-429f-8bdf-c54d03253dc2)
]
coclass DirectPlay8Client { interface IDirectPlay8Client; }
[
helpstring("DirectPlay8Server Object"),
threading(both),
uuid(da825e1b-6830-43d7-835d-0b5ad82956a2)
]
coclass DirectPlay8Server { interface IDirectPlay8Server; }
[
helpstring("DirectPlay8Peer Object"),
threading(both),
uuid(286f484d-375e-4458-a272-b138e2f80a6a)
]
coclass DirectPlay8Peer { interface IDirectPlay8Peer; }
[
helpstring("DirectPlay8Address Object"),
threading(both),
uuid(934a9523-a3ca-4bc5-ada0-d6d95d979421)
]
coclass DirectPlay8Address { interface IDirectPlay8Address; }
[
helpstring("DirectPlay8LobbiedApplication Object"),
threading(both),
uuid(667955ad-6b3b-43ca-b949-bc69b5baff7f)
]
coclass DirectPlay8LobbiedApplication { interface IDirectPlay8LobbiedApplication; }
[
helpstring("DirectPlay8 Thread Pool Object"),
threading(both),
uuid(fc47060e-6153-4b34-b975-8e4121eb7f3c)
]
coclass DirectPlay8ThreadPool { interface IDirectPlay8ThreadPool; }
...@@ -28,23 +28,25 @@ ...@@ -28,23 +28,25 @@
#include "wingdi.h" #include "wingdi.h"
#include "winuser.h" #include "winuser.h"
#include "objbase.h" #include "objbase.h"
#include "oleauto.h"
#include "oleidl.h"
#include "rpcproxy.h"
#include "wine/debug.h" #include "wine/debug.h"
#include "dplay8.h" #include "initguid.h"
#include "dplobby8.h"
/*
*#include "dplay8sp.h"
*/
#include "dpnet_private.h" #include "dpnet_private.h"
WINE_DEFAULT_DEBUG_CHANNEL(dpnet); WINE_DEFAULT_DEBUG_CHANNEL(dpnet);
static HINSTANCE instance;
/* At process attach */ /* At process attach */
BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpvReserved) BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpvReserved)
{ {
TRACE("%p,%x,%p\n", hInstDLL, fdwReason, lpvReserved); TRACE("%p,%x,%p\n", hInstDLL, fdwReason, lpvReserved);
if (fdwReason == DLL_PROCESS_ATTACH) { if (fdwReason == DLL_PROCESS_ATTACH) {
DisableThreadLibraryCalls(hInstDLL); instance = hInstDLL;
DisableThreadLibraryCalls(hInstDLL);
} }
return TRUE; return TRUE;
} }
...@@ -159,3 +161,19 @@ HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv) ...@@ -159,3 +161,19 @@ HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
FIXME("(%p,%p,%p): no interface found.\n", debugstr_guid(rclsid), debugstr_guid(riid), ppv); FIXME("(%p,%p,%p): no interface found.\n", debugstr_guid(rclsid), debugstr_guid(riid), ppv);
return CLASS_E_CLASSNOTAVAILABLE; return CLASS_E_CLASSNOTAVAILABLE;
} }
/***********************************************************************
* DllRegisterServer (DPNET.@)
*/
HRESULT WINAPI DllRegisterServer(void)
{
return __wine_register_resources( instance, NULL );
}
/***********************************************************************
* DllUnregisterServer (DPNET.@)
*/
HRESULT WINAPI DllUnregisterServer(void)
{
return __wine_unregister_resources( instance, NULL );
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment