Seite 1 von 1

Addin Tab

Verfasst: 29. Mär 2011, 15:27
von Pseudocode
Hallo !

Weiss jemand zufällig wofür die Addin-Status und Subscription Status Spalte in der Addin Übersicht im Dashboard da ist?

Re: Addin Tab

Verfasst: 29. Mär 2011, 22:51
von AliG
Hi!

Bei Subscription Status kann ein Add-In z.B. anzeigen, ob die Lizenz für das Add-In abgelaufen ist.
Status ist mehr für generelle Meldungen über den Zustand des Add-ins gedacht.

lg Alex

Re: Addin Tab

Verfasst: 30. Mär 2011, 12:22
von Martin
Ich nutze bei der Beta von Lights-Out die Spalten für das Ablaufdatum der Beta und für die Prüfung auf Updates. Nach Ablauf der Testzeit deinstalliert sich Lights-Out von selbst. Der Code läuft im Dienst und sieht etwa so aus:

Code: Alles auswählen

         try
         {
            var addinMgr = new AddInManager();
            DateTime timeBomb = new DateTime(2011, 3, 31);
            if (DateTime.Now > timeBomb)
            {
               addinMgr.UninstallAddInAsync(s_Guid);
            }
            else
            {
               addinMgr.SetAddInExpirationDateAsync(s_Guid, timeBomb, new Uri("http://www.axonet.de/whs/webhelp/en/"));
            }
         }
         catch (Exception e)
         {
            s_Logger.Error("CheckForUpdates: {0}", e);
         }
Die Prüfung auf Updates verwendet ebenfalls den AddInManager:

Code: Alles auswählen

         if (notifyNewVersion)
         {
            var addinMgr = new AddInManager();
            addinMgr.NewAddInVersionAvailable(
               s_Guid,
               new Version(m_UpdateInfo.MajorVersion, m_UpdateInfo.MinorVersion, m_UpdateInfo.ReleaseVersion,
                           m_UpdateInfo.BuildVersion),
               new Uri(m_UpdateInfo.DownloadUrl), 
               UpdateClassification.Update);
            s_Logger.Debug("NewAddInVersionAvailable called");
         }
Viel Spass
Martin

Re: Addin Tab

Verfasst: 30. Mär 2011, 21:59
von Pseudocode
Vielen Dank für die Info und für das Beispiel.
Kann ich ganz gut anwenden :-)

Re: Addin Tab

Verfasst: 1. Apr 2011, 14:00
von Pseudocode
Noch eine Frage:

Wie kann ich die Infos aus der AddIn.xml Datei nach der Installation auslesen, also im Quellcode?
Habe mir schon die PackageInfo angeschaut. Ist aber leer, bzw ich weiss nicht wie ich die initalisieren kann.

Re: Addin Tab

Verfasst: 1. Apr 2011, 14:51
von Mike Lowrey
Mit xsd eine zugehörige Klasse erstellen lassen und dann deserialisieren?

Re: Addin Tab

Verfasst: 1. Apr 2011, 15:31
von Pseudocode
Problem ist, die liegt mir bei der Erstellung des Installationspaketes vor.
Nach der Installation finde ich die nirgendwo!?

Re: Addin Tab

Verfasst: 1. Apr 2011, 16:46
von AliG
Die Addin.xml erstellst du eh selber, also musst du ja wissen was drinsteht?
Oder geht es darum, die Infos von anderen Addins auszulesen?

lg Alex

Re: Addin Tab

Verfasst: 2. Apr 2011, 20:11
von Pseudocode
Ja klar weiss ich was da steht.
Ich bin aber bequem :-), die Versionsnr zählt mein Foundation Server hoch.
Heisst, ich kenne die eigentlich nicht.
Kann das natürlich manuell machen, dachte aber man könnte im Addin selber auf die Addin-Infos wie z.b VersionsNr zugreifen.
Habe das aber nicht geschafft....

Re: Addin Tab

Verfasst: 3. Apr 2011, 11:37
von AliG
Wenn es um den Produktcode der MSI geht, wäre es wohl am einfachsten, die Addin.xml selbst an einen bestimmten Ort zu installieren, dann könntest du darauf zugreifen.

Solltest du nur die Versionsnummer deiner Add-In DLL haben wollen, würde ich System.Reflection.Assembly.GetExecutingAssembly().GetName() .Version.ToString() machen ;-)

lg Alex

Re: Addin Tab

Verfasst: 3. Apr 2011, 13:00
von Martin
System.Reflection.Assembly.GetExecutingAssembly().GetName() .Version.ToString()
Das liefert die Assemblyversion. Wenn du File- oder Programversion willst dann geht das über den Pfad:

Code: Alles auswählen

var consoledll = @"c:\program files\windows home server\HomeserverConsoleTab.LightsOut.dll";
FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(consoledll);
Gruß
Martin