1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00

Use regedit to register event source

ext/win32std is unmaintained for years, so it is highly unlikely that
it is available.  We therefore use regedit instead to register the
event source.  We also remove the bundled syslog.reg, since it is of no
use, unless generated for the respective installation.
This commit is contained in:
Christoph M. Becker
2019-07-18 09:06:10 +02:00
parent b35b9eb1d6
commit f34db7fc2a
4 changed files with 3 additions and 30 deletions

1
.gitignore vendored
View File

@@ -208,6 +208,7 @@ php
/win32/*.positions
/win32/*.suo
/win32/ext
/win32/syslog.reg
/win32/wsyslog.h
# Standard object files generated by Visual Studio

View File

@@ -264,3 +264,4 @@ really-install:
@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)
-regedit /s win32\syslog.reg

View File

@@ -1,33 +1,10 @@
<?php
/* This script sets up an event source for use by the php syslog() function. */
if (!extension_loaded("win32std")) {
@dl("php_win32std.dll");
}
/* This script generates the .reg file to set up an event source for use by the php syslog() function. */
$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
@@ -40,5 +17,4 @@ REGEDIT4
REG
);
?>

View File

@@ -1,5 +0,0 @@
REGEDIT4
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\PHP-7.3.0-dev]
"TypesSupported"=dword:00000007
"EventMessageFile"="g:\\test\\srctrunkinstall\\php7ts.dll"