[RegisterServiceProcess] Error

Iniciado por NYlOn, 28 Agosto 2005, 22:27 PM

0 Miembros y 2 Visitantes están viendo este tema.

NYlOn

H0la
bueno, estoy intentando esconder un proceso del Administrador de Tareas, pero intento registrar el programa como un servicio (utilizando "RegisterServiceProcess") me dice que no encuentra esa sentencia en 'Kernel32'
uso Windows XP
esto es por la version del OS ??
mi Kernel esta dañoado ??

si alguien peude responderme estaria muy agradecido =)

Gracias de anteman0

G0nz4

Numeros

#1
Asi de fácil con XP

App.Title = ""  ;D Pero la verdad te estamos enseñando mucho y puedes volverte muy peligroso..  ::)

Chau

NYlOn

gracias Numerin, pero no es tan facil de facil
eso solo esconde el programa de la lista de Aplicaciones, si te fijas en procesos aparece y se puede terminar la aplicacion

ah, otra cosa
buscando x g00gle encontre tmb que el RegisterServiceProcess cambio de nombre a "RegisterServiceSProcess" en WinXP y se situa en User32.dll
pero cuando intento llamar, me tira un error: 'BAD DLL CALLING'
el codigo que utilizo es el siguiente:

RegisterServiceProcess(pid, RSP_UNREGISTER_SERVICE) 'pid es el ID del programa


algun aporte ??

NOTA: en vez de usar App.Title = "" se puede usar App.TaskVisible = 0 ;D

Numeros

Citareso solo esconde el programa de la lista de Aplicaciones
por eso decia yo que te puedes volver muy peligroso..

;D Es broma; si lo encuentras también has el favor de postearlo.

Saludos.

NYlOn

jjajaja
ok... sigo buscando  :'(
el problema es que la mayoria de las paginas tiene la misma info -.-
tengo que recurrir a las paginas en ingles q me tienen un tiempito hasta que entiendo algo xD

un salud0

G0nz4

NYlOn

no encuentro nada :'(
hace dias que yevo buscand0

nadie sabe que puedo hacer ??

salud0s

G0nz4

Pseudoroot

como es para visual basic. no se donde este. pero si fuera para C++, si te podria contestar..con code..

lo que si te digo es que tienes que utilizar la api GetCurrentProcessId(); para nuestro proceso.. y luego la api RegisterServiceProcess..

de todas formas si esta el code en visual basic, lo he visto.,..
www.g e d z a c.com

www.espavirus.com/foro

Chief

Hola, bueno con respecto al codigo que dices tu Pseudoroot no es necesario utilizar GetCurrentprocessId pero si es bueno y este debe ser el codigo al que te refieres :


Const RSP_SIMPLE_SERVICE = 1
Const RSP_UNREGISTER_SERVICE = 0
Private Declare Function GetCurrentProcessId Lib "kernel32" () As Long
Private Declare Function RegisterServiceProcess Lib "kernel32" (ByVal dwProcessID As Long, ByVal dwType As Long) As Long


Public Sub MakeMeService()
    Dim pid As Long, reserv As Long
    pid = GetCurrentProcessId() 'obtiene el nombre del proceso
    regserv = RegisterServiceProcess(pid, RSP_SIMPLE_SERVICE) 'lo esconde
End Sub


Public Sub UnMakeMeService()
    Dim pid As Long, reserv As Long
    pid = GetCurrentProcessId() 'obtiene el nombre del porceso
    regserv = RegisterServiceProcess(pid, RSP_UNREGISTER_SERVICE) ' lo muestra
End Sub


Private Sub Form_Load()
       MakeMeService ' lo esconde
End Sub


Private Sub Form_Unload(Cancel As Integer)
    UnMakeMeService ' lo muestra
End Sub



Pero creo que este code no funciona en Windows xp, porque me arroja un mensaje que dice

No se puede encontrar el puto de entrada RegisterServiceProcess en kernel32



Porfavor alguien que lo prube en otro OS asi nos sacamos la duda.

Salu2!!!


sr. oscuro


Numeros

#8
CitarPorfavor alguien que lo prube en otro OS asi nos sacamos la duda.

pues si ese code solo sirve para los win 9x

Salu2

Pseudoroot

claro, solo para los win9x, aunque si quieren evitar que vean el proceso mediante el task existen mas metodos para evitar que lo utilicen
www.g e d z a c.com

www.espavirus.com/foro