From aeaeba0dd69a2419ffb41e2f73900232051b3c34 Mon Sep 17 00:00:00 2001 From: Bill Zissimopoulos Date: Tue, 7 Feb 2017 14:53:27 -0800 Subject: [PATCH] launcher: change registry location --- build/VStudio/installer/Product.wxs | 2 +- doc/WinFsp-Service-Architecture.asciidoc | 14 ++++++++------ src/dll/np.c | 3 ++- src/launcher/launcher.c | 4 ++-- src/launcher/launcher.h | 3 ++- tools/diag.bat | 8 ++------ tools/fsreg.bat | 10 +++++----- 7 files changed, 22 insertions(+), 22 deletions(-) diff --git a/build/VStudio/installer/Product.wxs b/build/VStudio/installer/Product.wxs index 295ed120..c8ea5e16 100644 --- a/build/VStudio/installer/Product.wxs +++ b/build/VStudio/installer/Product.wxs @@ -22,7 +22,7 @@ $(var.MyProductName).Launcher - SYSTEM\\CurrentControlSet\\Services\\$(var.MyProductName).Launcher\\Services + Software\$(var.MyProductName)\Services Software\$(var.MyProductName) #define PROGNAME "WinFsp.Launcher" -#define REGKEY LAUNCHER_REGKEY BOOL CreateOverlappedPipe( PHANDLE PReadPipe, PHANDLE PWritePipe, PSECURITY_ATTRIBUTES SecurityAttributes, DWORD Size, @@ -441,7 +440,8 @@ NTSTATUS SvcInstanceCreate(HANDLE ClientToken, goto exit; } - RegResult = RegOpenKeyExW(HKEY_LOCAL_MACHINE, L"" REGKEY, 0, KEY_READ, &RegKey); + RegResult = RegOpenKeyExW(HKEY_LOCAL_MACHINE, L"" LAUNCHER_REGKEY, + 0, LAUNCHER_REGKEY_WOW64 | KEY_READ, &RegKey); if (ERROR_SUCCESS != RegResult) { Result = FspNtStatusFromWin32(RegResult); diff --git a/src/launcher/launcher.h b/src/launcher/launcher.h index 27ffe37f..06e1e869 100644 --- a/src/launcher/launcher.h +++ b/src/launcher/launcher.h @@ -21,7 +21,8 @@ #include #include -#define LAUNCHER_REGKEY "SYSTEM\\CurrentControlSet\\Services\\WinFsp.Launcher\\Services" +#define LAUNCHER_REGKEY "Software\\WinFsp\\Services" +#define LAUNCHER_REGKEY_WOW64 KEY_WOW64_32KEY #define LAUNCHER_STOP_TIMEOUT 5500 #define LAUNCHER_KILL_TIMEOUT 5000 diff --git a/tools/diag.bat b/tools/diag.bat index f9b04194..240431bc 100755 --- a/tools/diag.bat +++ b/tools/diag.bat @@ -2,8 +2,8 @@ setlocal -echo WINFSP INSTALLATION DIRECTORY -reg query HKLM\SOFTWARE\WinFsp /reg:32 +echo WINFSP INSTALLATION DIRECTORY AND LAUNCHER REGISTRATIONS +reg query HKLM\SOFTWARE\WinFsp /s /reg:32 echo. echo WINFSP DLL REGISTRATIONS @@ -12,10 +12,6 @@ reg query HKLM\SYSTEM\CurrentControlSet\Services\WinFsp.Np\NetworkProvider reg query HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Application\WinFsp echo. -echo WINFSP LAUNCHER REGISTRATIONS -reg query HKLM\SYSTEM\CurrentControlSet\Services\WinFsp.Launcher\Services /s -echo. - echo WINFSP FSD CONFIGURATION AND STATUS sc query WinFsp sc qc WinFsp diff --git a/tools/fsreg.bat b/tools/fsreg.bat index afb875eb..c762f724 100644 --- a/tools/fsreg.bat +++ b/tools/fsreg.bat @@ -3,7 +3,7 @@ setlocal setlocal EnableDelayedExpansion -set RegKey=HKLM\SYSTEM\CurrentControlSet\Services\WinFsp.Launcher\Services +set RegKey=HKLM\Software\WinFsp\Services if not X%1==X-u ( set unreg=0 @@ -16,9 +16,9 @@ if not X%1==X-u ( if X!fscmdl!==X goto usage if not exist !fsexec! goto notfound - reg add !RegKey!\!fsname! /v Executable /t REG_SZ /d !fsexec! /f - reg add !RegKey!\!fsname! /v CommandLine /t REG_SZ /d !fscmdl! /f - if not X!fssecu!==X reg add !RegKey!\!fsname! /v Security /t REG_SZ /d !fssecu! /f + reg add !RegKey!\!fsname! /v Executable /t REG_SZ /d !fsexec! /f /reg:32 + reg add !RegKey!\!fsname! /v CommandLine /t REG_SZ /d !fscmdl! /f /reg:32 + if not X!fssecu!==X reg add !RegKey!\!fsname! /v Security /t REG_SZ /d !fssecu! /f /reg:32 ) else ( set unreg=1 @@ -26,7 +26,7 @@ if not X%1==X-u ( if X!fsname!==X goto usage - reg delete !RegKey!\!fsname! /f + reg delete !RegKey!\!fsname! /f /reg:32 ) exit /b 0