Ir al contenido


Foto

[TRUCO DELPHI] WMI - Determinar si la computadora es un Servidor o una Estacion de Trabajo


  • Por favor identifícate para responder
No hay respuestas en este tema

#1 sir.dev.a.lot

sir.dev.a.lot

    Advanced Member

  • Miembros
  • PipPipPip
  • 545 mensajes
  • Location127.0.0.1

Escrito 22 septiembre 2016 - 12:12

[TRUCO DELPHI] WMI - Determinar si la computadora es un Servidor o una Estacion de Trabajo


delphi
  1. const
  2. wbemFlagForwardOnly = $00000020;
  3. var
  4. FSWbemLocator : OLEVariant;
  5. FWMIService : OLEVariant;
  6. FWbemObjectSet: OLEVariant;
  7. FWbemObject : OLEVariant;
  8. oEnum : IEnumvariant;
  9. iValue : LongWord;
  10. begin;
  11. FSWbemLocator := CreateOleObject('WbemScripting.SWbemLocator');
  12. FWMIService := FSWbemLocator.ConnectServer('localhost', 'root\CIMV2', '', '');
  13. FWbemObjectSet:= FWMIService.ExecQuery('SELECT DomainRole FROM Win32_ComputerSystem','WQL',wbemFlagForwardOnly);
  14. oEnum := IUnknown(FWbemObjectSet._NewEnum) as IEnumVariant;
  15. if oEnum.Next(1, FWbemObject, iValue) = 0 then
  16. begin
  17. case FWbemObject.DomainRole of
  18. 0: Writeln('Standalone Workstation');
  19. 1: Writeln('Member Workstation');
  20. 2: Writeln('Standalone Server');
  21. 3: Writeln('Member Server');
  22. 4: Writeln('Backup Domain Controller');
  23. 5: Writeln('Primary Domain Controller');
  24. end;
  25. FWbemObject:=Unassigned;
  26. end;
  27. end;

Saludos!


  • 1




IP.Board spam blocked by CleanTalk.