CreatePort(name$)
OnUserMessage zugewiesen
haben. Wenn Sie den Ereignis-Handler nicht installieren, erhalten Sie keine
Benachrichtigungen über eingehende Nachrichten.
Bitte beachten Sie, dass Nachrichtenportnamen immer in Groß-/Kleinschreibung notiert werden. Somit bedeuten "MYPORT" und "myport" zwei unterschiedliche Nachrichtenports. Aus Stilgründen wird empfohlen, dass Sie nur Großbuchstaben für Ihren Anschlussnamen verwenden. Außerdem muss jeder Nachrichtenport im System eindeutig sein. Wenn Sie einen Portnamen angeben, der bereits verwendet wird, schlägt dieser Befehl fehl. Stellen Sie daher sicher, dass Sie einen eindeutigen Namen verwenden.
Bitte beachten Sie, dass jedes Hollywood-Skript nur einen Nachrichtenport haben kann. Wenn Sie bereits einen Nachrichtenport angelegt haben und dieser Befehl erneut aufrufen, wird der alte Nachrichtenport gelöscht.
Siehe InstallEventHandler Für weitere Informationen, wie die Callback-Funktion des Benutzers aufgerufen wird.
Function p_EventFunc(msg)
Switch msg.action
Case "OnUserMessage"
Switch msg.command
Case "EXIT"
DebugPrint("Exit received! Quitting now.")
End
Default
Local t = SplitStr(msg.args, "\0")
DebugPrint(msg.command, "called with", msg.argc, "argument(s)")
For Local k = 1 To msg.argc
DebugPrint("Argument", k .. ":", t[k - 1])
Next
EndSwitch
EndSwitch
EndFunction
CreatePort("MY_COOL_PORT_123")
InstallEventHandler({OnUserMessage = p_EventFunc})
Repeat
WaitEvent
Forever
Speichern Sie den obigen Code als ein Hollywood-Skript und
führen Sie ihn mit Hollywood aus. Dann speichern Sie den
folgenden Code als neues Hollywood-Skript und führen ihn aus:
SendMessage("MY_COOL_PORT_123", "INIT", "Value1", "Value2", "Value3")
SendMessage("MY_COOL_PORT_123", "DO_SOMETHING", "Argument1")
SendMessage("MY_COOL_PORT_123", "EXIT")
Der obige Code kommuniziert dann mit dem ersten Skript. Sie
sehen, dass die Nachrichten aus der Debug-Ausgabe von Skript
Nummer eins ankommen.