Ir para conteúdo
Fórum Script Brasil
  • 0

Alteração de prioridade dos processos


deathcon4

Pergunta

Eu estou tentando escrever um script para alterar o nível de prioridade de um processo. Parece que ele fica em loop e o Wscript não encerra depois de alterar o nível do processo. Não consigo encontrar o erro.

'wmic process where name="wininit.exe" call setPriority 32
'wmic process where name="csrss.exe" call setpriority 32
'wmic process where name="smss.exe" call setpriority 32
'wmic process where name="winlogon.exe" call setpriority 32
Dim WMI, OS, Value, Shell
Dim WshShell
Dim objWMI, objShell, osInfo
'Private Sub Promote_Admin
'do while WScript.Arguments.Count = 0
Set objWMI = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\.\root\cimv2")
Set objShell = CreateObject("Shell.Application")
Set osInfo = objWMI.ExecQuery("SELECT * FROM Win32_OperatingSystem")
objShell.ShellExecute "wscript.exe", Chr(34) & _
WScript.ScriptFullName & Chr(34) & " uac", "", "runas",1
'loop
'Const NORMAL = 32
'strComputer = "."
'Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
'Set colProcesses = objWMIService.ExecQuery("Select * from Win32_Process Where Name='wininit.exe' and Name = 'CSRSS.EXE' and Name='SMSS.EXE' and Name='winlogon.exe'")
'For Each objProcess in colProcesses
'objProcess.SetPriority(NORMAL)
'Next
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' If a particular process is running, will change its priority to whatever
' the constant PRIORITY_LEVEL is set at. If you want to change which service
' this script looks for, change the strProcess variable to the name of the
' process it is associated with.
'
' Priority Level Values:
' - Normal 32
' - Low 64
' - Realtime 128
' - High 256
' - Below Normal 16384
' - Above Normal 32768
'
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'Set vars
'Const PRIORITY_LEVEL = 32
'Const PROCESSO = "winlogon.exe"
'strComputer = "."
'Set objWMIService = GetObject("winmgmts:" _
' & "{impersonationLevel=impersonate}!\\" _
' & strComputer & "\root\cimv2")
'Search for process, if it's running, update priority
'Do
' Set colProcesses = objWMIService.ExecQuery _
' ("Select * from Win32_Process Where Name='winlogon.exe' and name='wininit.exe' and name='crss.exe' and name='smss.exe'")
' For Each objProcess in colProcesses
' objProcess.SetPriority(PRIORITY_LEVEL)
' Next
'Loop While 1
Const HIGH = 32
strComputer = "."
strProcess = "wininit.exe"
strProcess = "csrss.exe"
strProcess = "smss.exe"
strProcess = "winlogon.exe"
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colProcesses = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = '" & strProcess & "'")
For Each objProcess in colProcesses
objProcess.SetPriority(HIGH)
Next
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = 'wscript.exe'")
For Each objProcess in colProcessList
objProcess.Terminate()
Next
'End Sub
WScript.Echo "Obrigado!"
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "taskkill /f /im Cscript.exe", , True
WshShell.Run "taskkill /f /im wscript.exe", , True
'WScript.Quit
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...