Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    31

    [VbScript] Enumerare i servizi

    Salve,

    dato che avrei la necessitò di verificare i servizi in esecuzione in un computer ho scritto questo semplice script:

    codice:
    dim sServizio
    sServizio = "Accesso rete"
    sServizio = inputbox ("Inserire il nome del servizio da verificare:","Inserire il nome del servizio",sServizio)
    Set oWMIService = GetObject("winmgmts:\\.\root\cimv2")
    Set colRunningServices = oWMIService.ExecQuery ("Select * from Win32_Service")
    For Each oService in colRunningServices
        if sServizio = oService.DisplayName and oService.State = "Stopped" then
          msgbox ("Il servizio " & sServizio & " è stato trovato ed è " & oService.State)
        end if
    Next
    Il programma funziona correttamente, ma mi sono accorto che non mi trova tutti i servizi, ad esempio se ricerco Client DNS o Client DHCP non mi viene trovato.
    Da notare che l'esempio riportato non emette nessun messaggio se il servizio non viene trovato.

    Qualche suggerimento?

    Grazie in anticipo.
    Ultima modifica di MItaly; 18-11-2013 a 17:52 Motivo: Tag CODE, titolo

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    Quei servizi sono "ospitati" (anche in gruppo) in processi di tipo "svchost".
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3

    Moderazione

    • Le discussioni relative a VBScript non sono trattate qui, ma nella sezione Visual Basic e .Net Framework;
    • il codice va specificato tra tag [CODE] ... [/CODE], altrimenti perde l'indentazione;
    • i titoli dovrebbero contenere una breve descrizione del problema, e non esclusivamente il linguaggio di riferimento.


    Correggo io e provvedo a spostare il thread.
    Amaro C++, il gusto pieno dell'undefined behavior.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    31
    Quote Originariamente inviata da MItaly Visualizza il messaggio
    • Le discussioni relative a VBScript non sono trattate qui, ma nella sezione Visual Basic e .Net Framework;
    • il codice va specificato tra tag
      codice:
       ...
      , altrimenti perde l'indentazione;
    • i titoli dovrebbero contenere una breve descrizione del problema, e non esclusivamente il linguaggio di riferimento.


    Correggo io e provvedo a spostare il thread.
    Grazie mille, sarò più attento la prossima volta.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    31
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Quei servizi sono "ospitati" (anche in gruppo) in processi di tipo "svchost".
    Si di questo me ne ero accorto.
    Di conseguenza ho fatto un test creando una lista in excel dei servizi in esecuzione e i servizi Client DNS e Client DHCP vengono "rilevati" nella lista. Di seguito il codice utilizzato:
    codice:
    Set objExcel = CreateObject("Excel.Application")
    objExcel.Visible = True
    Set objWorkbook = objExcel.Workbooks.Add()
    Set objWorksheet = objWorkbook.Worksheets(1)
    x = 1
    strComputer = "."
    Set objWMIService = _
        GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
    Set colItems = objWMIService.ExecQuery _
        ("Select * from Win32_Service")
    For Each objItem in colItems
        objWorksheet.Cells(x, 1) = objItem.Name
        objWorksheet.Cells(x, 2) = objItem.DisplayName
        objWorksheet.Cells(x, 3) = objItem.State
        x = x + 1
    Next
    Set objRange = objWorksheet.UsedRange
    objRange.EntireColumn.Autofit()
    Dunque non riesco a capire come mai il programma non funzioni.

    Grazie
    Ultima modifica di ljt; 20-11-2013 a 15:14

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.