msscript.ocx: Added DLL registration implementation.

This commit is contained in:
Jacek Caban 2015-06-24 10:26:12 +02:00 committed by Alexandre Julliard
parent 90466296e3
commit 611b6725e1
5 changed files with 60 additions and 4 deletions

View File

@ -1,4 +1,5 @@
MODULE = msscript.ocx MODULE = msscript.ocx
RC_SRCS = msscript.rc
IDL_SRCS = msscript.idl IDL_SRCS = msscript.idl
C_SRCS = \ C_SRCS = \

View File

@ -17,11 +17,15 @@
*/ */
#include "windows.h" #include "windows.h"
#include "ole2.h"
#include "rpcproxy.h"
#include "wine/debug.h" #include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(msscript); WINE_DEFAULT_DEBUG_CHANNEL(msscript);
static HINSTANCE msscript_instance;
/****************************************************************** /******************************************************************
* DllMain (msscript.ocx.@) * DllMain (msscript.ocx.@)
*/ */
@ -33,6 +37,7 @@ BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, LPVOID lpv)
case DLL_WINE_PREATTACH: case DLL_WINE_PREATTACH:
return FALSE; /* prefer native version */ return FALSE; /* prefer native version */
case DLL_PROCESS_ATTACH: case DLL_PROCESS_ATTACH:
msscript_instance = instance;
DisableThreadLibraryCalls(instance); DisableThreadLibraryCalls(instance);
break; break;
} }
@ -63,8 +68,8 @@ HRESULT WINAPI DllCanUnloadNow(void)
*/ */
HRESULT WINAPI DllRegisterServer(void) HRESULT WINAPI DllRegisterServer(void)
{ {
FIXME("()\n"); TRACE("()\n");
return E_NOTIMPL; return __wine_register_resources(msscript_instance);
} }
/*********************************************************************** /***********************************************************************
@ -73,5 +78,5 @@ HRESULT WINAPI DllRegisterServer(void)
HRESULT WINAPI DllUnregisterServer(void) HRESULT WINAPI DllUnregisterServer(void)
{ {
TRACE("()\n"); TRACE("()\n");
return E_NOTIMPL; return __wine_unregister_resources(msscript_instance);
} }

View File

@ -294,7 +294,10 @@ library MSScriptControl
[ [
helpstring("ScriptControl Object"), helpstring("ScriptControl Object"),
uuid(0e59f1d5-1fbe-11d0-8ff2-00a0d10038bc) uuid(0e59f1d5-1fbe-11d0-8ff2-00a0d10038bc),
threading(apartment),
progid("MSScriptControl.ScriptControl.1"),
vi_progid("MSScriptControl.ScriptControl")
] ]
coclass ScriptControl { coclass ScriptControl {
[default] interface IScriptControl; [default] interface IScriptControl;

View File

@ -0,0 +1,20 @@
/*
* Copyright 2015 Jacek Caban for CodeWeavers
*
* 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
*/
/* @makedep: msscript.rgs */
2 WINE_REGISTRY msscript.rgs

View File

@ -0,0 +1,27 @@
HKCR
{
NoRemove CLSID
{
'{0e59f1d5-1fbe-11d0-8ff2-00a0d10038bc}'
{
'Implemented Categories'
{
'{0de86a52-2baa-11cf-a229-00aa003d7352}'
'{0de86a53-2baa-11cf-a229-00aa003d7352}'
'{0de86a57-2baa-11cf-a229-00aa003d7352}'
'{40fc6ed4-2438-11cf-a3db-080036f12502}'
'{40fc6ed5-2438-11cf-a3db-080036f12502}'
}
Control
MiscStatus = s '0'
{
'1' = s '132499'
}
}
}
'ScriptControl' = s 'ScriptControl Object'
{
CLSID = s '{0e59f1d5-1fbe-11d0-8ff2-00a0d10038bc}'
CurVer = s 'MSScriptControl.ScriptControl.1'
}
}