Automating VSDM via scripts
Sample scripts are bundled with VSDM in its installation folder (by default C:\Program Files\VSDM\samples). It is recommended that you have some understanding of the VSDM solution before continuing to read this article.
Option
Explicit
Dim server
Dim wsh
Dim inet
Dim newVM
Dim vmName
Dim template
Dim network
Dim vmID
Dim rand
' This variable points to your VSDM server root
' e.g.: https://yourserver:81
server = "https://myserver"
' These variables define your VM name and template used
vmName = "AutomationTest" ' Your machine name
template = "xp-pro" ' Machine template to base on
network = 2 ' 2 = Internal Network (but subject to change)
' Random number to avoid collision when running this sample
rand = Now
rand = Replace(rand, "/", "-")
rand = Replace(rand, ":", "-")
Set wsh = CreateObject("WScript.Shell")
Set inet = CreateObject("InternetExplorer.Application")
' Building your VM name
vmID = wsh.ExpandEnvironmentStrings("%USERNAME%." & template & "." & vmName & " " & rand)
' URL to create a new VM
newVM = server & "/vm_ctrl.asp?action=add&name=" & vmID &_
"&template=" & template &_
"&types=" & template &_
"&nettype=" & network
'WScript.Echo "Create <[" & newVM & "]>"
' Call the Internet object to perform the action
WScript.Echo "Performing action. Please wait..."
inet.Navigate newVM
' Wait the request to complete
while inet.Busy
WScript.Echo "Waiting to complete..."
WScript.Sleep 1000
wend
WScript.Echo
"Request completed"