Page 2 of 2 FirstFirst 1 2
Showing results 11 to 19 of 19

Thread: Wizard im Zenon Editor automatisch starten

  1. #11
    Join Date
    27.04.2020
    Posts
    10

    Default Re: Wizard im Zenon Editor automatisch starten

    Es bleibt leider dabei. Auch beim Debuggen funktioniert es nicht.

    Sobald ich folgende Zeile drin habe, startet das Makro nicht und auch das Debuggen wird nicht ermöglicht.

    Dim wiz As New Wizard_GW_Fest.Wizard_GW_Fest.EditorWizardExtensio n()

    Den Verweis auf das Wizward habe ich wie folgt hinzugefügt:

    Verweis hinzufügen -> Projekte -> Auswählen des entsprechenden Projektes für das Wizard. Anschließend erscheint der Verweis in der Verweisliste und die Befehle führen zu keiner Fehlermeldung beim Kompilieren.

    Muss ich in dem EditorWizard noch irgendwas einstellen, damit ich dieses Einbinden kann? Ich arbeite übrigens mit dem Micorsoft Visual Studio.

  2. #12
    Join Date
    10.12.2007
    Posts
    260

    Default AW: Wizard im Zenon Editor automatisch starten

    Sorry, dann fällt mir langsam auch nichts mehr ein. Vielleicht liegts auch am Wizard. Mein Testwizard gibt einfach nur den Namen des aktiven Projekts in einer Messagebox aus, sonst nichts.
    Vielleicht auch mal mit irgend sowas einfachen testen... Wie gesagt, ich hab's ausprobiert und es geht. Kann mir kaum vorstellen, dass es an VB statt C# liegt. Ich verwende zur Zeit Visual Studio 2017 und getestet habe ich mit zenon8.20...

  3. #13
    Join Date
    27.04.2020
    Posts
    10

    Default Re: Wizard im Zenon Editor automatisch starten

    Moin,

    vielen Dank schon mal bis jetzt für die Unterstützung. Ich weiß ehrlich gesagt nicht genau warum, aber ich habe es jetzt zum Laufen gebracht und die Windows Form wird gestartet.

    Nun habe ich aber eine weitere Fragen. In deiner ersten Antwort, hattest du geschrieben, dass man das ganze über interne Variablen, die man in der Runtime beschreibt, realisieren kann. Wie genau soll das funktionieren? Wenn ich in der Runtime eine Variable beschreibe, bekommt doch der Editor nichts davon mit. Gibt es diesbezüglich bei den interen Variablen Besonderheiten?

  4. #14
    Join Date
    10.12.2007
    Posts
    260

    Default AW: Wizard im Zenon Editor automatisch starten

    Naja du müsstest halt aus dem Editor-Service bzw.-Wizard einen Verweis auf die Runtime erstellen. Dazu musst Du einen Verweis auf die Interop.zenOn.dll hinzufügen, dann kannst Du z.B. so auf die RT zugreifen:

    Code:
    zenOn.Application zRT = (zenOn.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("zenOn.Application");
    if(zRT != null)
    {
        MessageBox.Show("RT läuft mit Projekt: " + zRT.Projects().Item(0).Name);
    }
    Damit kannst Du dann natürlich dann auch auf die Variablen der RT zugreifen. Interne Variablen verhalten sich erst mal genauso wie andere Variablen, da gibts erstmal keine Besonderheiten. Sie brauchen halt keine Tags und kommunizieren nicht mit irgendeiner Steuerung, deshalb wären sie dafür ideal.
    Last edited by mst : 3rd November 2020 at 09:01 Reason: Bemerkung zu internen Variablen vergessen

  5. #15
    Join Date
    27.04.2020
    Posts
    10

    Default Re: Wizard im Zenon Editor automatisch starten

    Moin,

    ich bin immer noch bei meinem leidigen Thema. Das Starten eines Wizards aus einem Dienst ist scheinbar nicht gewollt und funktioniert nicht zuverlässig.

    Wie auch immer. Nun habe ich die entsprechenden Wizards einfach in einen Dienst ausgelagert, über den die GUIs direkt aufgerufen werden können. Es gibt nun zwei Fälle, die ich betrachten muss.

    Zenon Editor muss noch gestartet werden und nach dem Start soll sofort die entsprechende GUI gestartet werden. Hierfür lege ich einen Verweis auf die Runtime und lese mir direkt beim Start des Dienstes den Wert einer internen Variable aus. Das funktioniert auch einwandfrei, da es aus dem HauptThread heraus geschieht.

    Nun möchte ich die entsprechenden GUIs auch bei geöffneten Editor starten können. Hierfür habe ich mir einen OnlineContainer angelegt, der die entsprechende interne Variable in der Runtime aboniert. Auch das funktioniert grundsätzlich. Nun ist es aber so, dass 20000 Variablen durchlaufen werden. Dies führt in dem zweiten Fall zu deutlich längeren "Bearbeitungszeiten". Dies liegt wahrscheinlich daran, dass der Aufruf nicht aus dem Hauptthread geschieht. Wie ist es denn nun möglich, dass auf das ValueChange Event reagiert werden kann, der Start der GUI aber über den HauptThread ausgeführt wird.

    Über eine Antwort würde ich mich sehr freuen! Vielen Dank schon einmal im Voraus.

  6. #16
    Join Date
    10.12.2007
    Posts
    260

    Default AW: Wizard im Zenon Editor automatisch starten

    Hab ich jetzt nicht verstanden, ist auch schon wieder ein Weilchen her...
    Von wo willst Du diese Variablen lesen? ED oder RT? In welcher Extension-Art (ED/RT, Service/Wizard) hast Du diesen Onlinecontainer angelegt? Wann werden die 20000 Variablen durchlaufen, sind die alle im Onlinecontainer?

    Ein bisschen mehr Infos und auch Codeschnipsel wären hilfreich wenn Du eine Antwort willst

  7. #17
    Join Date
    27.04.2020
    Posts
    10

    Default Re: Wizard im Zenon Editor automatisch starten

    Also folgendes, ich versuche es noch einmal etwas zu verdeutlichen.

    Ich arbeite mit einer Service-Extension im Editor. Von dort habe ich einen Verweis auf die Runtime, wo ich einen OnlineContainer für eine einzigVariable angelegt habe. Diese Variable dient nur als Trigger, welche Aktionen (in der Regel Öffnen einer Windows Form) im Editor starten soll.

    In der Windows Form werden dann nur die Variablen aus dem Editor durchlaufen und in Listenform mit Namen und Kennung aufgelistet. Beim Start des Dienstes und dem direkten Öffnen der Windows Form aus der Start Prozedur des Dienstes heraus, ist die Performance gut.

    Ändert sich nun der Wert der abonierten Trigger Variable aus der Runtime (VariableChange-Event), wird die Windows Form auch problemlos geöffnet und auch das Durchlaufen der Variablen wird durchgeführt. Hier ist allerdings das Problem das das Durchlaufen der Variablen deutlich länger ist.

    Ich habe es auch zum Testen mit einem Timer-Event versucht. Leider gleiches Ergebnis.

    In einem früheren Forum-Thread habe ich auch schon gelesen, dass Aktionen, die nicht aus dem Haupt Thread heraus ausgeführt werden, weniger perfomant sein können. Ich weiß nun nicht wie ich das Öffnen der Windows Form auf den Hauptthread umleiten bzw. antriggern kann.

    Ich hoffe das Problem ist etwas deutlicher geworden. Ansonsten gerne noch einmal nachfragen!

  8. #18
    Join Date
    10.12.2007
    Posts
    260

    Default AW: Wizard im Zenon Editor automatisch starten

    Hm, kann es sein dass Du auf das RT Project statt auf das ED Project zugreifst wenn Du die GUI aus dem ChangeEvent aufrufst? (Lässt sich die Runtime bedienen während die Variablen ausgelesen werden)
    Grundsätzlich würde ich die VariableChanged Aktion immer in einem separaten Task ausführen.
    Ich glaub auf GitHub gibts von Copa-Data eine VariableSubscription Klasse die das schon beinhaltet. Im Konstruktor wird der Klasse eine auszuführende Caller Methode vom Typ Action<IVariable> übergeben und diese wird dann von der Klasse im VariableChanged Event in einem neuen Task aufgerufen...

  9. #19
    Join Date
    27.04.2020
    Posts
    10

    Default Re: Wizard im Zenon Editor automatisch starten

    Danke für die Hilfe! Ich bin zu einer Lösung gekommen.

    In dem VariableChange-Event habe ich das nachladen der geänderten Runtime Files angestoßen. Hierdurch wird wiederum ein Event des Arbeitsbereiches angestoßen. Dieses Event wird dann wieder aus dem Hauptthread bearbeitet, was zu einer deutlich besseren Performance führt.

    Alles etwas auf Umwegen. Aber erlaub ist, was funktioniert!

Similar Threads

  1. webclient_IE_multiplescreens automatisch starten
    By michab in forum zenon Network
    Replies: 18
    Last Post: 25th May 2020, 11:47
  2. Rename variable based on structure datatype in editor wizard
    By bartsmets in forum Add-In Framework
    Replies: 1
    Last Post: 23rd December 2019, 13:38
  3. Editor Fehler beim Starten
    By tingeltangelbob in forum zenon Service Engine Operator
    Replies: 3
    Last Post: 27th October 2016, 07:53
  4. Runtime über Editor mit x64 starten
    By rabi in forum zenon Service Engine Supervisor
    Replies: 2
    Last Post: 3rd December 2014, 15:50
  5. zenOn-Editor 6.22 SP0 Build 3 beendet sich sofort nach dem Starten
    By maerz@staudinger-est.de in forum zenon Service Engine Supervisor
    Replies: 5
    Last Post: 19th September 2008, 21:17

Posting Rules

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •