Vor dem selben Problem standen wir auch mal.
Wir gingen auch den Weg über eine Maske. Die Maske wurde dabei über ein Konfigurationsdokument geöffnet. Im Dokument steht der Agentname und eine kurze Beschreibung, was der Agent macht. (Die Maske selber enthält eine zentrierte Tabelle mit dem Text "Aktion wird ausgeführt: ...." und wird im Hintergrund solange angezeigt, solange der Agent läuft.... Dann flackert auch nichts ;) )
Der Agent selber wird im QueryClose ausgeführt mittels
@Command([ToolsRunMacro];AgentName);
Die Maske wird mit
tmpDoc.agentName="MeinAgent"
tmpDoc.Beschreibung="Blabla"
ws.Editdocument(False,tmpDoc).close(true)
geöffnet und sofort wieder geschlossen.
Gruß
Roland