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 ForeverSpeichern 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.