Add-In Aktivierungs-Event

Eigener Bereich für die Entwickler unter uns! Add-Ins, aber auch andere Programme.
Antworten
Benutzeravatar
Pitti
Foren-Mitglied
Beiträge: 86
Registriert: 15. Mär 2009, 20:45
Wohnort: München Umland
Kontaktdaten:

Add-In Aktivierungs-Event

Beitrag von Pitti »

Hi zusammen,

weiß jemand, ob es ein Event oder Methode gibt, wo man merkt, dass ein Add-In-Tab geklickt wurde? Oder anders gefragt, kann ein Addin selber merken, dass es aktiviert wurde?

Danke & Ciao
Pitti
Server Acer H340 mit 3x 1TB ST31000333AS + 1x 1TB WD10EACS
Clients 4x Windows XP, 2x Windows 7
Bild
Benutzeravatar
Pitti
Foren-Mitglied
Beiträge: 86
Registriert: 15. Mär 2009, 20:45
Wohnort: München Umland
Kontaktdaten:

Re: Add-In Aktivierungs-Event

Beitrag von Pitti »

Hallo nochmal,

vielleicht habe ich mich ja zu kompliziert ausgedrückt und deshalb noch einmal meine Frage:

Bekommt ein Add-In eine Info/Nachricht wenn ein Benutzer oben in der Consolen-Toolbar auf den Add-In-Reiter drückt?

Wäre toll wenn sich da jemand melden würde - auch um nur Feedback zu bekommen ob die Frage verständlich ist!

Danke & CIao
Pitti
Server Acer H340 mit 3x 1TB ST31000333AS + 1x 1TB WD10EACS
Clients 4x Windows XP, 2x Windows 7
Bild
Benutzeravatar
Martin
Moderator
Beiträge: 9948
Registriert: 11. Sep 2007, 10:51
Wohnort: Im wilden Süden

Re: Add-In Aktivierungs-Event

Beitrag von Martin »

Ich glaube du kannst nur den normalen Windowsevent auswerten, dass ein Fenster aktiv wird.

Gruß
Martin
Essentials 2016 unter Windows Server 2022 auf HP Microserver Gen 8.
Entwickler von Lights-Out
Pseudocode
Foren-Mitglied
Beiträge: 360
Registriert: 25. Aug 2007, 20:06
Wohnort: Bochum,Germany

Re: Add-In Aktivierungs-Event

Beitrag von Pseudocode »

Hallo !

Ich würde hier auch das activated Event nutzen !

Gruß
Benutzeravatar
AliG
Moderator
Beiträge: 3727
Registriert: 6. Jun 2007, 17:33
Wohnort: Salzburg, Österreich

Re: Add-In Aktivierungs-Event

Beitrag von AliG »

Hi!

Der Vollständigkeit halber: die WHS-API definiert im Interface ITabExtender eine Funktion Prepare(), diese wird aufgerufen, wenn das Add-In durch Klick auf den entsprechenden Button in der Konsole aktiviert wird.

Nähere Infos: http://ihatelinux.blogspot.com/2008/01/ ... 2-tab.html

lg Alex
Mache ich etwas richtig, merkt es keiner. Mache ich etwas falsch, vergisst es keiner. :D

Mein WHS
Benutzeravatar
Martin
Moderator
Beiträge: 9948
Registriert: 11. Sep 2007, 10:51
Wohnort: Im wilden Süden

Re: Add-In Aktivierungs-Event

Beitrag von Martin »

Leider wird nur einmal Prepare() für Settings aufgerufen, Refresh() gar nicht und für normale Tabs auch nicht.

Also auch nicht wirklich verwendbar.

Gruß
Martin
Essentials 2016 unter Windows Server 2022 auf HP Microserver Gen 8.
Entwickler von Lights-Out
Benutzeravatar
AliG
Moderator
Beiträge: 3727
Registriert: 6. Jun 2007, 17:33
Wohnort: Salzburg, Österreich

Re: Add-In Aktivierungs-Event

Beitrag von AliG »

Hi!

Kann ich so nicht bestätigen, hab mir das Beispielprojekt runtergeladen (von hier: http://ihatelinux.blogspot.com/2008/01/ ... 4-tab.html), hier wird Prepare() jedes Mal beim aktivieren eines Tabs aufgerufen und Refresh() sobald man F5 drückt. Mein WHS hat natürlich PP1 und alle anderen Updates.

lg Alex
Mache ich etwas richtig, merkt es keiner. Mache ich etwas falsch, vergisst es keiner. :D

Mein WHS
Benutzeravatar
Martin
Moderator
Beiträge: 9948
Registriert: 11. Sep 2007, 10:51
Wohnort: Im wilden Süden

Re: Add-In Aktivierungs-Event

Beitrag von Martin »

Ah, danke, muss ich mir nochmals ansehen, ist ja schon etwas länger her mit dem Artikel.

Gruß
Martin
Essentials 2016 unter Windows Server 2022 auf HP Microserver Gen 8.
Entwickler von Lights-Out
Benutzeravatar
Pitti
Foren-Mitglied
Beiträge: 86
Registriert: 15. Mär 2009, 20:45
Wohnort: München Umland
Kontaktdaten:

Re: Add-In Aktivierungs-Event

Beitrag von Pitti »

Hi AliG,

Bingo, das war's was ich meinte und suchte! Hat sofort funktioniert - Vielen Dank!

Einfach die Klasse um das Interface ITabExtender erweiter und die 5 Methoden implementieren!

Im Part 1 des WHS Dev Tipps ist es genau erklärt => http://ihatelinux.blogspot.com/2008/01/ ... art-1.html

Danke & Ciao
Pitti
Server Acer H340 mit 3x 1TB ST31000333AS + 1x 1TB WD10EACS
Clients 4x Windows XP, 2x Windows 7
Bild
Benutzeravatar
Pitti
Foren-Mitglied
Beiträge: 86
Registriert: 15. Mär 2009, 20:45
Wohnort: München Umland
Kontaktdaten:

Re: Add-In Aktivierungs-Event

Beitrag von Pitti »

Noch ein Nachtrag!

Bei Klick auf den Tab wird zuerst die Prepare und danach noch die Refresh Methode aufgerufen, also BEIDE ;-) ... bei F5 nur die Refresh! Und selbst wenn der Tab schon aktiv ist werden bei Klick auf den Tab die Methoden aufgerufen.

Nur der Vollständigkeit wegen ;-)

Gute Nacht
Pitti
Server Acer H340 mit 3x 1TB ST31000333AS + 1x 1TB WD10EACS
Clients 4x Windows XP, 2x Windows 7
Bild
Benutzeravatar
Martin
Moderator
Beiträge: 9948
Registriert: 11. Sep 2007, 10:51
Wohnort: Im wilden Süden

Re: Add-In Aktivierungs-Event

Beitrag von Martin »

Wer Brendans Testloader einsetzt muss dann den Source anpassen:

Code: Alles auswählen

      void TestPropertiesOfType(Type t, object instance)
      {
         PropertyInfo[] props = t.GetProperties();

         foreach (PropertyInfo pi in props)
         {
            try
            {
               object o = pi.GetValue(instance, null);

               //Remove if desired, returning null on some properties is ok
               //if (o == null)
               //   throw new Exception("Property " + pi.Name + " returned null.");
            }
            catch (Exception ex)
            {
               throw new Exception("Property " + pi.Name + " threw an exception.", ex);
            }
         }
      }
Nach dem Kommentar //Remove if desired, returning null on some properties is ok
sind die nächsten beiden Zeilen auszukommentieren, sonst wirft der TestLoader eine Exception und stirbt.

Gruß
Martin
Essentials 2016 unter Windows Server 2022 auf HP Microserver Gen 8.
Entwickler von Lights-Out
Capture
Foren-Mitglied
Beiträge: 56
Registriert: 24. Feb 2008, 17:28

Re: Add-In Aktivierungs-Event

Beitrag von Capture »

Ah mein Kopf *grübelschmerzen*

hab das Beispiel versucht einzulesen in der Vb 2008 Express Edition... war abe ne alte Version und was er versutch hat zu korrigieren, war dann voll daneben.
Irgendwie peil ich das nicht, wie ich das in VB einbinden soll, damit der Event klappt.

Kann nicht vieleicht einer von dem Howto
viewtopic.php?f=31&t=899
das Beispiel entsprechend erweitern um diese Sache ?
Währe echt supi für Anfänger...bin ja schon froh das ich nen Addin hinbekommen hab.. und das seit einer Woche VB.NET^^

Gruß
Cap
Antworten