OLE and Win9x seems to work allright as Shawn says.The following script using Microsoft agents works on my Win95.
code:
Break On
$Err = SetConsole("minimize")
$agent_control = "agent.control.2"
$agent_name = "Merlin"
$agent_path = "%WinDir%\msagent\chars\$agent_name.acs"
$agent = CreateObject ("$agent_control" )
$agent.connected = "1"
$characters = $agent.characters
$Err = $characters.load("$agent_name","$agent_path")
$character = $characters.character("$agent_name")
$Err = $character.show
$Err = $character.play("announce")
$Err = $character.play("greet")
$Err = $character.speak("Greetings %username% !")
$Err = $character.speak("This is your logon script ... ")
$Err = $character.play("read" )
$Err = $character.speak("Checking group membership ...")
$Err = $character.play("readcontinued")
$Err = $character.play("readreturn")
$Err = $character.play("domagic1" )
$Err = $character.speak("Adding the network drives")
$Err = $character.play("domagic2")
$Err = $character.play("congratulate")
$Err = $character.speak("Success .....................")
$Done = $character.play("wave")
For $counter = 1 To 40
? $Done.status
Sleep 1
Next
$Err = $character.hide
Return
I had hoped that i could use a script like this:
code:
Break On
$Err = SetConsole("minimize")
$agent_control = "agent.control.2"
$agent_name = "Merlin"
$agent_path = "%WinDir%\msagent\chars\$agent_name.acs"
$agent = CreateObject ("$agent_control")
$agent.connected = "1"
$characters = $agent.characters
$Err = $characters.load("$agent_name","$agent_path")
$character = $characters.character("$agent_name")
$Err = $character.show
$Err = $character.play("announce")
$Err = $character.play("greet")
$Err = $character.speak("Greetings %username% !")
$Err = $character.speak("This is your logon script ... ")
$Err = $character.play("read")
$Err = $character.speak("Checking group membership ...")
$Err = $character.play("readcontinued")
$Err = $character.play("readreturn")
$Err = $character.play("domagic1")
$Err = $character.speak("Adding the network drives")
$Err = $character.play("domagic2")
$Err = $character.play("congratulate")
$Err = $character.speak("Success .....................")
$Done = $character.play("wave")
Do
Sleep 1
Until $Done.status = 0 Or $Done.status = 1 Or $Done.status = 3
; Status: 0 = Completed 1 = Failed 3 = Interrupted
$Err = $character.hide
Return
I haven't testet the last script on NT, so I don't know if it would work there.
Maybe it's something that will be fixed in the final release.
By the way is there any way of using events for COM-objects.
Erik
[This message has been edited by kholm (edited 04 April 2001).]