Jacek Caban : scrrun: Moved script extensions registration to scrrun.dll.

Alexandre Julliard julliard at winehq.org
Wed Dec 7 13:57:13 CST 2011


Module: wine
Branch: master
Commit: 0325ec71e9554fa43ed744fafd9ae29e5572417f
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=0325ec71e9554fa43ed744fafd9ae29e5572417f

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Wed Dec  7 12:19:08 2011 +0100

scrrun: Moved script extensions registration to scrrun.dll.

---

 dlls/jscript/jscript.rgs   |    1 -
 dlls/scrrun/scrrun.c       |   14 ++++++++++----
 dlls/scrrun/scrrun.rc      |    3 +++
 dlls/scrrun/scrrun.rgs     |    5 +++++
 dlls/vbscript/vbscript.rgs |    1 -
 5 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/dlls/jscript/jscript.rgs b/dlls/jscript/jscript.rgs
index fe6517a..b4da2b5 100644
--- a/dlls/jscript/jscript.rgs
+++ b/dlls/jscript/jscript.rgs
@@ -116,7 +116,6 @@ HKCR
         OLEScript
     }
 
-    ForceRemove '.js' = s 'JSFile'
     ForceRemove JSFile = s 'JScript Script File'
     {
         ScriptEngine = s 'JScript'
diff --git a/dlls/scrrun/scrrun.c b/dlls/scrrun/scrrun.c
index e825697..3284584 100644
--- a/dlls/scrrun/scrrun.c
+++ b/dlls/scrrun/scrrun.c
@@ -21,10 +21,15 @@
 
 #include "windef.h"
 #include "winbase.h"
+#include "ole2.h"
+#include "rpcproxy.h"
+
 #include "wine/debug.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(scrrun);
 
+static HINSTANCE scrrun_instance;
+
 BOOL WINAPI DllMain( HINSTANCE hinst, DWORD reason, LPVOID reserved )
 {
     TRACE("%p, %u, %p\n", hinst, reason, reserved);
@@ -35,6 +40,7 @@ BOOL WINAPI DllMain( HINSTANCE hinst, DWORD reason, LPVOID reserved )
             return FALSE;    /* prefer native version */
         case DLL_PROCESS_ATTACH:
             DisableThreadLibraryCalls( hinst );
+            scrrun_instance = hinst;
             break;
         case DLL_PROCESS_DETACH:
             break;
@@ -47,8 +53,8 @@ BOOL WINAPI DllMain( HINSTANCE hinst, DWORD reason, LPVOID reserved )
  */
 HRESULT WINAPI DllRegisterServer(void)
 {
-    FIXME("\n");
-    return S_OK;
+    TRACE("()\n");
+    return __wine_register_resources(scrrun_instance);
 }
 
 /***********************************************************************
@@ -56,6 +62,6 @@ HRESULT WINAPI DllRegisterServer(void)
  */
 HRESULT WINAPI DllUnregisterServer(void)
 {
-    FIXME("\n");
-    return S_OK;
+    TRACE("()\n");
+    return __wine_unregister_resources(scrrun_instance);
 }
diff --git a/dlls/scrrun/scrrun.rc b/dlls/scrrun/scrrun.rc
index abc70a6..078afd6 100644
--- a/dlls/scrrun/scrrun.rc
+++ b/dlls/scrrun/scrrun.rc
@@ -16,6 +16,9 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
+/* @makedep: scrrun.rgs */
+1 WINE_REGISTRY scrrun.rgs
+
 #define WINE_FILEDESCRIPTION_STR "Wine ScrRun dll"
 #define WINE_FILENAME_STR "scrrun.dll"
 #define WINE_FILEVERSION 5,8,7600,16385
diff --git a/dlls/scrrun/scrrun.rgs b/dlls/scrrun/scrrun.rgs
new file mode 100644
index 0000000..d10d6ca
--- /dev/null
+++ b/dlls/scrrun/scrrun.rgs
@@ -0,0 +1,5 @@
+HKCR
+{
+    ForceRemove '.js' = s 'JSFile'
+    ForceRemove '.vbs' = s 'VBSFile'
+}
diff --git a/dlls/vbscript/vbscript.rgs b/dlls/vbscript/vbscript.rgs
index 7834e3e..c390d17 100644
--- a/dlls/vbscript/vbscript.rgs
+++ b/dlls/vbscript/vbscript.rgs
@@ -56,7 +56,6 @@ HKCR
     {
         OLEScript
     }
-    ForceRemove '.vbs' = s 'VBSFile'
     ForceRemove VBSFile = s 'VBScript Script File'
     {
         ScriptEngine = s 'VBScript'




More information about the wine-cvs mailing list