Sc.exe query

Obtém e exibe informações sobre o serviço, o driver, o tipo de serviço ou o tipo de driver especificado.

Sintaxe

sc.exe [<servername>] query [<servicename>] [type= {driver | service | all}] [type= {own | share | interact | kernel | filesys | rec | adapt}] [state= {active | inactive | all}] [bufsize= <Buffersize>] [ri= <Resumeindex>] [group= <groupname>]

Parâmetros

Parâmetro Descrição
<servername> Especifica o nome do servidor remoto no qual o serviço está localizado. O nome deve usar o formato UNC (Convenção de Nomenclatura Universal) (por exemplo, \myserver). Para executar SC.exe localmente, não use esse parâmetro.
<servicename> Especifica o nome do serviço retornado pela operação getkeyname. Esse parâmetro query não é usado em conjunto com outros parâmetros query (exceto servername).
type= {driver | service | all} Especifica o que enumerar. As opções incluem:
  • driver: especifica que apenas os drivers são enumerados.
  • service: especifica que somente os serviços são enumerados. Esse é o valor padrão.
  • all: especifica que os drivers e os serviços são enumerados.
type= {own | share | interact | kernel | filesys | rec | adapt} Especifica o tipo de serviços ou drivers a serem enumerados. As opções incluem:
  • own: especifica um serviço que é executado em seu próprio processo. Ele não compartilha um arquivo executável com outros serviços. Esse é o valor padrão.
  • share: especifica um serviço que é executado como um processo compartilhado. Ele compartilha um arquivo executável com outros serviços.
  • kernel: especifica um driver.
  • filesys: especifica um driver do sistema de arquivos.
  • rec: especifica um driver reconhecido pelo sistema de arquivos que identifica os sistemas de arquivos usados no computador.
  • interact: especifica um serviço que pode interagir com a área de trabalho, recebendo as entradas dos usuários. Os serviços interativos devem ser executados na conta LocalSystem. Esse tipo deve ser usado em conjunto com type= own ou type= shared (por exemplo, type= interacttype= own). Usar type= interact por si só gerará um erro.
state= {active | inactive | all} Especifica o estado iniciado do serviço a ser enumerado. As opções incluem:
  • active: especifica todos os serviços ativos. Esse é o valor padrão.
  • inactive: especifica todos os serviços pausados ou interrompidos.
  • all: especifica todos os serviços.
bufsize= <Buffersize> Especifica o tamanho (em bytes) do buffer de enumeração. O tamanho de buffer padrão é de 1.024 bytes. Você deve aumentar o tamanho do buffer quando a exibição resultante de uma consulta ultrapassar os 1.024 bytes.
ri= <Resumeindex> Especifica o número de índice no qual a enumeração deve ser iniciada ou retomada. O valor padrão é 0 (zero). Se mais informações forem retornadas do que o buffer padrão pode exibir, use esse parâmetro com bufsize=.
group= <Groupname> Especifica o grupo de serviços a ser enumerado. Por padrão, todos os grupos são enumerados. Por padrão, todos os grupos são enumerados (**group= **).
/? Exibe a ajuda no prompt de comando.

Comentários

  • Cada opção da linha de comando (parâmetro) deve incluir o sinal de igual como parte do nome da opção.

  • Um espaço é necessário entre uma opção e seu valor (por exemplo, type= own. Se o espaço for omitido, a operação falhará.

  • A operação query exibe as seguintes informações sobre um serviço: SERVICE_NAME (nome da subchave de registro do serviço), TYPE, STATE (bem como os estados indisponíveis), WIN32_EXIT_B, SERVICE_EXIT_B, CHECKPOINT e WAIT_HINT.

  • O parâmetro type= pode ser usado duas vezes em alguns casos. A primeira apresentação do parâmetro type= especifica se é para consultar os serviços, os drivers ou ambos (all). A segunda apresentação do parâmetro type= especifica um tipo da operação create para restringir ainda mais o escopo de uma consulta.

  • Quando os resultados da exibição de um comando query excedem o tamanho do buffer de enumeração, uma mensagem semelhante à seguinte é exibida:

    Enum: more data, need 1822 bytes start resume at index 79
    
    To display the remaining **query** information, rerun **query**, setting **bufsize=** to be the number of bytes and setting **ri=** to the specified index. For example, the remaining output would be displayed by typing the following at the command prompt:
    
    sc.exe query bufsize= 1822 ri= 79
    

Exemplos

Para exibir informações somente para os serviços ativos, digite um dos seguintes comandos:

sc.exe query
sc.exe query type= service

Para exibir informações para os serviços ativos e especificar um tamanho de buffer de 2.000 bytes, digite:

sc.exe query type= all bufsize= 2000

Para exibir informações para o serviço wuauserv, digite:

sc.exe query wuauserv

Para exibir informações para todos os serviços (ativos e inativos), digite:

sc.exe query state= all

Para exibir informações para todos os serviços (ativos e inativos), começando na linha 56, digite:

sc.exe query state= all ri= 56

Para exibir informações para os serviços interativos, digite:

sc.exe query type= service type= interact

Para exibir informações somente para os drivers, digite:

sc.exe query type= driver

Para exibir informações para os drivers no grupo NDIS (Especificação da Interface do Driver de Rede), digite:

sc.exe query type= driver group= NDIS