diff options
-rw-r--r-- | server/mpm/winnt/service.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/server/mpm/winnt/service.c b/server/mpm/winnt/service.c index 171d34a325..93d4a2140d 100644 --- a/server/mpm/winnt/service.c +++ b/server/mpm/winnt/service.c @@ -96,7 +96,7 @@ static int ReportStatusToSCMgr(int currentState, int exitCode, int waitHint); * HKLM\System\CurrentControlSet\Services\[service name] * * \DisplayName - * \ImagePath (NT Only) + * \ImagePath * \Parameters\ConfigArgs * * For Win9x, the launch service command is stored under: @@ -964,6 +964,13 @@ apr_status_t mpm_service_install(apr_pool_t *ptemp, int argc, } apr_snprintf(key_name, sizeof(key_name), SERVICECONFIG, mpm_service_name); + rv = ap_registry_store_value(key_name, "ImagePath", launch_cmd); + if (rv != APR_SUCCESS) { + ap_log_error(APLOG_MARK, APLOG_ERR | APLOG_STARTUP, rv, NULL, + "%s: Failed to store ImagePath in the registry.", + mpm_display_name); + return (rv); + } rv = ap_registry_store_value(key_name, "DisplayName", mpm_display_name); if (rv != APR_SUCCESS) { ap_log_error(APLOG_MARK, APLOG_ERR | APLOG_STARTUP, rv, NULL, |