[VBS] - Process van een andere gebruiker stoppen.

Pagina: 1
Acties:

  • Tijntje
  • Registratie: Februari 2000
  • Laatst online: 13:48
Ik heb het volgende probleem:

Ik heb een vbscript wat op een machine draait onder een domain admin account.
Het moet Word of Excel van de gebruiker afsluiten maar hij heeft daar blijkbaar geen rechten voor.
Als ik het Word of excel opstart onder de domain admin account dan werkt het script voortreffelijk.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Function KillProcess(APP)
    Select Case APP
        Case "WINWORD.EXE" bericht = "Word"
        Case "EXCEL.EXE" bericht = "Excel"
        Case "POWERPNT.EXE" bericht = "PowerPoint"
    End Select
    
    Set colProcessList = objWMIService.ExecQuery ("SELECT * FROM Win32_Process WHERE Name = '" & APP &"'")
    For Each objProcess in colProcessList
        objShell.Popup "U dient Microsoft " & bericht & " en zo verder...", TIMEOUT,POPUP_TITLE,vbCritical+vbOKOnly
            wscript.sleep 30000
        objShell.Popup "In verband met de update wordt Microsoft "& bericht & " en zo verder....", TIMEOUT,POPUP_TITLE,vbCritical+vbOKOnly
            wscript.sleep 30000
        objProcess.Terminate()
    Next
End Function

Ik moet het script onder deze user draaien en ik moet Word en Excel sluiten.
Ik heb al heel wat af gegoogled maar niks bruikbaars gevonden.

Als het niet gaat zoals het moet, dan moet het maar zoals het gaat.


  • Tijntje
  • Registratie: Februari 2000
  • Laatst online: 13:48
Is er niemand met een idee, ik kom er echt niet uit.

Als het niet gaat zoals het moet, dan moet het maar zoals het gaat.


  • Equator
  • Registratie: April 2001
  • Laatst online: 10:23

Equator

Crew Council

🦺#Rodekruis #whisky #barista

Ik heb dit op deze manier gedaan, en dat werkt prima goed.. ;)

VBScript:
1
2
3
4
5
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Process where Description = 'OUTLOOK.EXE'" ,,48)
For Each objItem in colItems
    objItem.terminate
Next

  • Tijntje
  • Registratie: Februari 2000
  • Laatst online: 13:48
CyberJ schreef op dinsdag 23 november 2004 @ 09:46:
Ik heb dit op deze manier gedaan, en dat werkt prima goed.. ;)

VBScript:
1
2
3
4
5
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Process where Description = 'OUTLOOK.EXE'" ,,48)
For Each objItem in colItems
    objItem.terminate
Next
Waarvoor is die 48? verder is het namelijk het zelde als die van mij.

Als het niet gaat zoals het moet, dan moet het maar zoals het gaat.


  • Equator
  • Registratie: April 2001
  • Laatst online: 10:23

Equator

Crew Council

🦺#Rodekruis #whisky #barista

Die 48 genereerd de Scriptomatic uit de resourcekit automagisch. Verder is het enige verschil dat ik geen "()" achter de terminate plaats.
Ook select ik op Description, en niet op name. DIt omdat name niet altijd bekend is geloof ik.. Er was iig een reden waarom ik description heb gebruikt.

  • Tijntje
  • Registratie: Februari 2000
  • Laatst online: 13:48
Het rare is dat hij wel ziet dat er een process draait met de naam want hij geeft wel die popups maar hij kan hem niet killen.

Ik kan met dat script van jouw ook geen process beëindigen van een andere gebruiker.

Als het niet gaat zoals het moet, dan moet het maar zoals het gaat.

Pagina: 1