Vinnaren i pepparkakshustävlingen!
2015-12-11, 16:03
  #1
Medlem
Terugflitss avatar
Vi har Cadcam på arbetet, och för att slippa starta och stänga av servern varje gång man ska öppna och stänga Cadprogrammet så försökte jag mej på ett script:

Kod:
Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Run("""C:\Program Files\Gibbs\GibbsCAM\RLMServer\rlm.exe""")
Set objShell = Nothing
WScript.Sleep (2500)

'Starta Gibbscam
Set Gibbscam = WshShell.Exec("""C:\Program Files\Gibbs\GibbsCAM\10.3.19.0-en-US\Bin\Virtual.exe""")	

'Vänta till Gibbscam stängs av
Do While Gibbscam.Status = 0
WScript.Sleep (500)

Loop

'Stäng av rlm
rlm.Terminate()

Det funkar fram till rad 8, då själva Cadprogrammet skall starta, men då får jag felmeddelandet:
"Objekt krävs.: WshShell" Körningsfel.
Citera
2015-12-12, 22:50
  #2
Moderator
Protons avatar
Citat:
Ursprungligen postat av Terugflits
Vi har Cadcam på arbetet, och för att slippa starta och stänga av servern varje gång man ska öppna och stänga Cadprogrammet så försökte jag mej på ett script:

Kod:
Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Run("""C:\Program Files\Gibbs\GibbsCAM\RLMServer\rlm.exe""")
Set objShell = Nothing
WScript.Sleep (2500)

'Starta Gibbscam
Set Gibbscam = WshShell.Exec("""C:\Program Files\Gibbs\GibbsCAM\10.3.19.0-en-US\Bin\Virtual.exe""")	

'Vänta till Gibbscam stängs av
Do While Gibbscam.Status = 0
WScript.Sleep (500)

Loop

'Stäng av rlm
rlm.Terminate()

Det funkar fram till rad 8, då själva Cadprogrammet skall starta, men då får jag felmeddelandet:
"Objekt krävs.: WshShell" Körningsfel.
Kan du inte återanvända det objekt du redan skapat?

Kod:
Dim objShell
Set objShell 
WScript.CreateObject"WScript.Shell" )
objShell.Run("""C:\Program Files\Gibbs\GibbsCAM\RLMServer\rlm.exe""")
Set objShell Nothing
WScript
.Sleep (2500)

'Starta Gibbscam
Set Gibbscam = objShell.Exec("""C:\Program Files\Gibbs\GibbsCAM\10.3.19.0-en-US\Bin\Virtual.exe""")    

'
Vänta till Gibbscam stängs av
Do While Gibbscam.Status 0
WScript
.Sleep (500)

Loop

'Stäng av rlm
rlm.Terminate() 

Så borde det väl kunna funka?
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback