+#ifdef HAVE_NT_SERVICE_MANAGER
+ {
+ int *i;
+ char *newConfigFile;
+ char *regService = NULL;
+
+ if ( is_NT_Service ) {
+ sglob->serverName = argv[0];
+ lutil_CommenceStartupProcessing( sglob->serverName, slurp_set_shutdown );
+ if ( strcmp(sglob->serverName, SERVICE_NAME) )
+ regService = sglob->serverName;
+ }
+
+ i = (int*)lutil_getRegParam( regService, "DebugLevel" );
+ if ( i != NULL )
+ {
+ ldap_debug = *i;
+ Debug( LDAP_DEBUG_ANY, "new debug level from registry is: %d\n", ldap_debug, 0, 0 );
+ }
+
+ newConfigFile = (char*)lutil_getRegParam( regService, "ConfigFile" );
+ if ( newConfigFile != NULL )
+ {
+ sglob->slapd_configfile = newConfigFile;
+ Debug ( LDAP_DEBUG_ANY, "new config file from registry is: %s\n", sglob->slapd_configfile, 0, 0 );
+
+ }
+ }
+#endif
+