Servicio NT

Hola tadeor, estoy creando un servicio NT (con CreateService etc...), bueno pues mi duda es saber como conseguir que el servicio se ejecute en un directorio deseado y no en WinNT/system32. He realizado mil pruebas y no logro conseguirlo.
Muchísimas gracias de antemano.
Un saludo
Respuesta
1
No me indicas en que estas programando pero por la función CreateService estas tirando de microsoft supongo que en VisualC++, bueno pues existen las funciones:
GetCurrentDirectory() y SetCurrentDirectory().
La get.. devuelve el diractorio acutal de trabajo, (desde donde arrancas el programa), necesita dos parametros el primero un entero con el tamaño del buffer donde guardar el directorio y el segundo un puntero a memoria reservada para guardar ahi el directorio.
La función set... pone como diractorio de trabajo el que tu quieras, no se que parámetros recibe, pero supongo que sera también el tamalo de la cadena con el diractorio y el puntero apuntando a la cadena.
Entonces al comienzo de tu aplicación usa la función SetCurr.. y así estableces ese diractorio como directorio de trabajo independientemente de donde se arranque la aplicación.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas