Tijdens User Logon wil ik een process killen en onder een ander account met Runas en gebruik van vbs SendKeys method weer starten. Leuk en aardig maar ik krijg hier altijd een korte flash van Runas:Type password>, indien de gebruiker slim en heel snel is en op het toetsenbord begint te raggen of met de muis begint te klikken, hiermee een ander venster activeert dan runas, interrupt hij het script en worden de sendkeys in het verkeerde venster toegepast. En het process wordt dan niet gestart. De AppActivate method bied me hier ook geen fool proof alternatief. Dit proces moet starten en wil ik de gebruiker op deze manier toegang tot dit proces verbieden.
Eigenlijk wil ik de Gebruiker helemaal niet op dit idee brengen en ben naarstig opzoek geweest naar een methode om een commando als Runas op de achtergrond door te voeren zonder dat de gebruiker er erg in heeft dat er ook maar iets gebeurt.
Ook is er geen optie om het proces als service te laten starten onder een ander account hij is afhankelijk van en start al samen met een LocalSystem service op onder local useraccount.
Is hier iemand die bekend is met een methode om Runas.exe op de achtergrond te houden? Of misschien een Total andere work around kan aandragen?
Ik heb ook aan mogelijkheden zitten denken om keyboard en mouse input uit te schakelen tijdens de uitvoering van dit script, maar dat lijkt ook niet zo simpel als het klinkt.
. Misschien weet iemand of dat voor elkaar te toveren is.
BvD
ps. Zoals natuurlijk bij de meeste werkgevers, we willen alles maar mag het niets kosten.
(Anders was het probleem al opgelost met andere software..)
Voorbeeld script
Eigenlijk wil ik de Gebruiker helemaal niet op dit idee brengen en ben naarstig opzoek geweest naar een methode om een commando als Runas op de achtergrond door te voeren zonder dat de gebruiker er erg in heeft dat er ook maar iets gebeurt.
Ook is er geen optie om het proces als service te laten starten onder een ander account hij is afhankelijk van en start al samen met een LocalSystem service op onder local useraccount.
Is hier iemand die bekend is met een methode om Runas.exe op de achtergrond te houden? Of misschien een Total andere work around kan aandragen?
Ik heb ook aan mogelijkheden zitten denken om keyboard en mouse input uit te schakelen tijdens de uitvoering van dit script, maar dat lijkt ook niet zo simpel als het klinkt.
BvD
ps. Zoals natuurlijk bij de meeste werkgevers, we willen alles maar mag het niets kosten.
(Anders was het probleem al opgelost met andere software..)
Voorbeeld script
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
| Option Explicit
Dim WshShell
Dim objWMIService, objProcess, colProcess
Dim strComputer, strProcess
strComputer = "."
strProcess = "'ctfmon.exe'"
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" _
& strComputer & "\root\cimv2")
Set colProcess = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = " & strProcess )
For Each objProcess in colProcess
objProcess.Terminate()
Next
'Hier begint het gedonder..
Set WshShell = CreateObject("wscript.Shell")
WshShell.Run "runas /noprofile /user:AnyUser ctfmon.exe"
WScript.Sleep 100
WshShell.AppActivate "runas.exe"
WshShell.SendKeys "~"
Wscript.quit |
