vbscript - Installation of MSI File on remote machine from local machine -


here script install msi file on remote machine:

const msifilename = "\\<ip addr>\c$\mysetup\<filename>"  set wshshell = wscript.createobject( "wscript.shell" ) wshshell.run "msiexec /a " & msifilename & " /quiet /log c:\install.log", 1, true 

when run script local machine, file installs on machine running from. instead want installed on machine specified in msifilename. going wrong?

you're running remote msi on local host. install remote executable on remote host, use wmi:

host  = "<ip addr>" setup = "msiexec /a ""c:\mysetup\<filename>"" /quiet ..."  set wmi = getobject("winmgmts://" & host & "/root/cimv2")  rc = wmi.get("win32_process").create(setup, , , pid)  if rc = 0   wscript.echo "setup started pid " & pid & "." else   wscript.echo "starting setup failed. (" & rc & ")" end if 

the above start process asynchronously (i.e. create returns immediately). if need wait remote process complete, you'll have monitor this:

do   wscript.sleep 100   set p = wmi.execquery("select * win32_process processid=" & pid) loop until p.count = 0 

there may simpler ways want, though, e.g. psexec:

psexec \\<ip addr> msiexec /a "c:\mysetup\<filename>" /quiet ... 

Comments

Popular posts from this blog

assembly - 8086 TASM: Illegal Indexing Mode -

Java, LWJGL, OpenGL 1.1, decoding BufferedImage to Bytebuffer and binding to OpenGL across classes -

java - SmsManager sending message more than one -