send
Grupo de Telegram
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Obtener Servicios [C]

  • 2 Respuestas
  • 1580 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Expermicid

  • *
  • Underc0der
  • Mensajes: 457
  • Actividad:
    0%
  • Reputación 0
  • _-Expermicid-_
    • Ver Perfil
  • Skype: expermicid.xd
« en: Diciembre 26, 2013, 12:56:50 am »
Continuando con un proyecto.

Código: C
  1. #include "windows.h"
  2. #include <stdio.h>
  3.  
  4. int main()
  5. {
  6.     DWORD i;
  7.     SC_HANDLE sc = OpenSCManager(NULL, NULL, SC_MANAGER_ENUMERATE_SERVICE|GENERIC_READ);
  8.  
  9.     if (sc != NULL) {
  10.         LPENUM_SERVICE_STATUS lpES = 0;
  11.         DWORD dwBuffSize = 0, dwBytesNeeded = 0, dwServicesReturned = 0, dwResumeHandle = 0;
  12.  
  13.         BOOL bR = EnumServicesStatus(sc,SERVICE_WIN32,SERVICE_STATE_ALL,lpES,dwBuffSize,&dwBytesNeeded,&dwServicesReturned,&dwResumeHandle);
  14.  
  15.         if ( bR != FALSE ) {
  16.             CloseServiceHandle(sc);
  17.         }
  18.  
  19.         lpES = (LPENUM_SERVICE_STATUS) LocalAlloc(LPTR, dwBytesNeeded);
  20.         if ( lpES == 0 ) {
  21.             CloseServiceHandle(sc);
  22.         }
  23.  
  24.         bR = EnumServicesStatus(sc,SERVICE_WIN32,SERVICE_STATE_ALL,lpES,dwBytesNeeded,&dwBytesNeeded,&dwServicesReturned,&dwResumeHandle);
  25.  
  26.         LPENUM_SERVICE_STATUS lpCE = lpES;
  27.  
  28.         for ( i = 0; i < dwServicesReturned; i++ ) {
  29.  
  30.             You are not allowed to view links. Register or Login(lpCE->lpServiceName);
  31.             You are not allowed to view links. Register or Login("       ");
  32.             You are not allowed to view links. Register or Login(lpCE->lpDisplayName);
  33.             You are not allowed to view links. Register or Login("       ");
  34.  
  35.             SERVICE_STATUS lpS = lpCE->ServiceStatus;
  36.             if ( lpS.dwCurrentState == SERVICE_CONTINUE_PENDING ) {
  37.                 You are not allowed to view links. Register or Login("Pendiente");
  38.             }
  39.             if ( lpS.dwCurrentState ==  SERVICE_PAUSE_PENDING) {
  40.                 You are not allowed to view links. Register or Login("Pendiente");
  41.             }
  42.             if ( lpS.dwCurrentState ==  SERVICE_PAUSED) {
  43.                 You are not allowed to view links. Register or Login("Pausado");
  44.             }
  45.             if ( lpS.dwCurrentState ==  SERVICE_RUNNING) {
  46.                 You are not allowed to view links. Register or Login("Corriendo");
  47.             }
  48.             if ( lpS.dwCurrentState ==  SERVICE_START_PENDING) {
  49.                 You are not allowed to view links. Register or Login("Iniciando");
  50.             }
  51.             if ( lpS.dwCurrentState ==  SERVICE_STOP_PENDING) {
  52.                 You are not allowed to view links. Register or Login("Deteniendo");
  53.             }
  54.             if ( lpS.dwCurrentState ==  SERVICE_STOPPED) {
  55.                 You are not allowed to view links. Register or Login("Parado");
  56.             }
  57.  
  58.             You are not allowed to view links. Register or Login("\n");
  59.  
  60.             ++lpCE;
  61.         }
  62.  
  63.         LocalFree(lpES);
  64.     }
  65.  
  66.     CloseServiceHandle(sc);
  67.     return 0;
  68. }

Salida:



Aclaracion: La salida la muestro asi porque en la consola sale muy desprolijo pero esa seria la salida.

Saludos
« Última modificación: Diciembre 26, 2013, 12:59:13 am por Expermicid »

Desconectado k133

  • *
  • Underc0der
  • Mensajes: 48
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #1 en: Diciembre 26, 2013, 10:47:05 pm »
Ya me parecía raro que tuviese GUI, buen trabajo ;).

Desconectado OnTheCore

  • *
  • Underc0der
  • Mensajes: 58
  • Actividad:
    0%
  • Reputación 1
    • Ver Perfil
« Respuesta #2 en: Enero 03, 2014, 03:54:07 pm »
en lugar de printf("       ");
utiliza
printf("\t");
y va a quedar mucho mas prolijo.

 

¿Te gustó el post? COMPARTILO!



[SNIPPET] Obtener ruta del navegador por defecto

Iniciado por Karcrack

Respuestas: 0
Vistas: 1191
Último mensaje Junio 16, 2013, 06:31:47 pm
por Karcrack
[SNIPPET] Obtener contraseñas almacenadas WLM

Iniciado por Karcrack

Respuestas: 0
Vistas: 1293
Último mensaje Junio 16, 2013, 06:31:26 pm
por Karcrack
[C] Obtener código fuente de una web [GNU/Linux]

Iniciado por S[e]C

Respuestas: 2
Vistas: 1636
Último mensaje Abril 02, 2010, 02:53:51 pm
por S[e]C
Obtener resolucion de pantalla [C/C++]

Iniciado por Expermicid

Respuestas: 0
Vistas: 3057
Último mensaje Enero 17, 2013, 01:48:47 pm
por Expermicid
Obtener Procesador [C/C++]

Iniciado por Expermicid

Respuestas: 0
Vistas: 1545
Último mensaje Enero 17, 2013, 01:47:04 pm
por Expermicid