Toon posts:

[VBScript] WMI en network drive

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Momenteel kan ik via mijn script op onze computers remote een .exe runnen, maar ik moet telkens de .exe kopiëren naar de lokale D: schijf om hem via dit script te kunnen runnen. Nu zou ik graag hebben dat het script die .exe kan runnen van op een netwerklocatie. Ik heb reedz geprobeerd met net use via wmi maar het lijkt alsof het script er nog steeds niet aan kan.

Zijn er nog andere mogelijke oplossingen hoe ik dit kan uitvoeren zonder de .exe telkens te moeten verplaatsen naar de computer.

VBScript:
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
31
32
33
Option Explicit
Dim objWMIService, objProcess, objShell
Dim strShell, objProgram, strComputer, strExe, strInput

Set objShell = CreateObject("WScript.Shell") 
strExe = "D:\shot.exe"


Do
strComputer = (InputBox(" ComputerName to Run Script",_
"Computer Name"))
If strComputer <> "" Then
strInput = True
End if
Loop until strInput = True




' Connect to WMI
set objWMIService = getobject("winmgmts://"_
& strComputer & "/root/cimv2")
Set objProcess = objWMIService.Get("Win32_Process")
Set objProgram = objProcess.Methods_( _
"Create").InParameters.SpawnInstance_
objProgram.CommandLine = strExe
Set strShell = objWMIService.ExecMethod( _
"Win32_Process", "Create", objProgram)

WScript.echo "Created: " & strExe & " on " & strComputer


WSCript.Quit

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Kun je niet gewoon een UNC gebruiken? \\servernaam\sharenaam\pad\naar\exe\shot.exe ?
Het kan zijn dat je die locatie wel even als trusted moet instellen (en dat kan dan wel weer met een GPO ofzo).

En het ontgaat me ook even waarom je zo omslachtig die exe start... Heb je de .Run method al gezien? Je maakt wel een objShell object maar doet er niets mee? En dat terwijl je dus objShell.Run zou kunnen gebruiken. Oh wacht, je start 'm remote. D'oh :X

Overigens: Waar hoort mijn topic?
PRG >> WOS

[ Voor 103% gewijzigd door RobIII op 13-08-2010 14:43 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Op deze manier voert hij het ook niet uit, script geeft geen errors ook.

VBScript:
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
31
32
Option Explicit
Dim objWMIService, objProcess
Dim strShell, objProgram, strComputer, strExe, strInput

strExe = "\\servernaam\map\shot.exe"


Do
strComputer = (InputBox(" ComputerName to Run Script",_
"Computer Name"))
If strComputer <> "" Then
strInput = True
End if
Loop until strInput = True




' Connect to WMI
set objWMIService = getobject("winmgmts://"_
& strComputer & "/root/cimv2")
Set objProcess = objWMIService.Get("Win32_Process")
Set objProgram = objProcess.Methods_( _
"Create").InParameters.SpawnInstance_
objProgram.CommandLine = strExe
Set strShell = objWMIService.ExecMethod( _
"Win32_Process", "Create", objProgram)

WScript.echo "Created: " & strExe & " on " & strComputer


WSCript.Quit