diff options
author | Christoph M. Becker <cmbecker69@gmx.de> | 2019-07-17 19:37:46 +0200 |
---|---|---|
committer | Christoph M. Becker <cmbecker69@gmx.de> | 2019-07-17 19:37:46 +0200 |
commit | 6d00cff36fad3c318799dcaf527d0bea5afd2217 (patch) | |
tree | 5254d2b5a2abdf5692ccc10c67840e5eddd68898 | |
parent | 96aae524bf8b83f751f78e29a86e075195ad7fb6 (diff) | |
parent | 6f617b7759a12c341a055de42e06717ebf905130 (diff) | |
download | php-git-6d00cff36fad3c318799dcaf527d0bea5afd2217.tar.gz |
Merge branch 'PHP-7.4'
* PHP-7.4:
Revert "Remove Windows syslog script and syslog.reg"
-rw-r--r-- | win32/build/Makefile | 3 | ||||
-rwxr-xr-x | win32/build/registersyslog.php | 44 | ||||
-rw-r--r-- | win32/syslog.reg | 5 |
3 files changed, 52 insertions, 0 deletions
diff --git a/win32/build/Makefile b/win32/build/Makefile index a4d82e06fb..26b73b625a 100644 --- a/win32/build/Makefile +++ b/win32/build/Makefile @@ -261,3 +261,6 @@ really-install: @type nul > $(BUILD_DIR)\extension_dlls.txt @if exist $(BUILD_DIR)\php_*.dll copy $(BUILD_DIR)\php_*.dll $(PHP_PREFIX)\ext /y >nul & dir /b $(BUILD_DIR)\php_*.dll > $(BUILD_DIR)\extension_dlls.txt @xcopy $(BUILD_DIR)\*.dll /exclude:$(BUILD_DIR)\extension_dlls.txt $(PHP_PREFIX) /y >nul + @echo Registering event source with syslog (requires admin rights) + @echo It's okay for this step to fail: + -$(PHP_PREFIX)\php.exe -n -dextension_dir=$(PHP_PREFIX) win32/build/registersyslog.php $(PHP_PREFIX)\$(PHPDLL) diff --git a/win32/build/registersyslog.php b/win32/build/registersyslog.php new file mode 100755 index 0000000000..ce28cbf420 --- /dev/null +++ b/win32/build/registersyslog.php @@ -0,0 +1,44 @@ +<?php + +/* This script sets up an event source for use by the php syslog() function. */ + +if (!extension_loaded("win32std")) { + @dl("php_win32std.dll"); +} + +$PATH = "SYSTEM\\CurrentControlSet\\Services\\Eventlog\\Application\\PHP-" . phpversion(); + +$dll = $argv[1]; + +if (extension_loaded("win32std")) { + $key = @reg_create_key(HKEY_LOCAL_MACHINE, $PATH, KEY_ALL_ACCESS); + + if (!$key) + $key = reg_open_key(HKEY_LOCAL_MACHINE, $PATH, KEY_ALL_ACCESS); + + if ($key) { + reg_set_value($key, "TypesSupported", REG_DWORD, 7) or die("Types"); + reg_set_value($key, "EventMessageFile", REG_SZ, $dll) or die("EventMessageFile"); + + syslog(LOG_NOTICE, "Registered PHP Event source"); + } else { + echo "Could not register event source\n"; + } +} + +/* let's also generate/update the bundled .reg file */ + +$dll = addslashes($dll); + +file_put_contents("win32/syslog.reg", <<<REG +REGEDIT4 + +[HKEY_LOCAL_MACHINE\\$PATH] +"TypesSupported"=dword:00000007 +"EventMessageFile"="$dll" + +REG +); + + +?> diff --git a/win32/syslog.reg b/win32/syslog.reg new file mode 100644 index 0000000000..a817b52faf --- /dev/null +++ b/win32/syslog.reg @@ -0,0 +1,5 @@ +REGEDIT4 + +[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\PHP-7.3.0-dev] +"TypesSupported"=dword:00000007 +"EventMessageFile"="g:\\test\\srctrunkinstall\\php7ts.dll" |