Laden...

updateSystem.NET

Erstellt von Maximilian vor 14 Jahren Letzter Beitrag vor 11 Jahren 159.523 Views
W
196 Beiträge seit 2007
vor 13 Jahren

Maximillian kurze Frage:

Wie hast du das mit den Popup Panels und dem Abdunkeln des Hintergrunds gelöst? Gibt es da nen fertigen Code oder ein Sample? Ich würd das auch gern in meinem Programm einbauen.

Mfg wizer

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hey wizer,
was meinst du mit Popup-Panels? Das mit dem Abdunkeln hab ich progressOverlay getauft. Ist in jedem Fall alles selbstgeschrieben. Schau dir mal die dotNetBase.Windows.Forms.dll (ebenfalls von mir gecoded) in dem Programmverzeichnis vom updateSystem an (einfach die DLL in die ToolBox vom VS ziehen), da ist das progressOverlay und noch einige andere Controls enthalten die du verwenden kannst.

Cheerio

W
196 Beiträge seit 2007
vor 13 Jahren

Ja genau sowas wie progressOverlay halt nur statt einer progessbar ein UserControl. Aber ich werd mir da schon weiterhelfen können 😃
Danke für die Antwort!

Mfg wizer

22 Beiträge seit 2008
vor 13 Jahren

Hi,

also entweder habe ich einen Bug entdeckt oder aber ich mach was falsch.

Wenn ich den Updatevorgang manuell (ohne "updateInteractive()") mit "checkForUpdatesDialog()" starte, dann liefert "currentUpdateResult.UpdatesAvailable" mir auch einen Wert zurück.
Wenn ich das ganze jetzt aber mit "checkForUpdates()" starte, dann ist "currentUpdateResult" null und somit gibt mir "currentUpdateResult.UpdatesAvailable" auch null zurück.

Würde aber das Suchen nach updates gern im hintergrund ablaufen lassen. Und nur wenn ein Update verfügbar ist, die Benachrichtigung anzeigen.

Gruß Tom

//edit: Habe gerade nochmal was getestet. Es ist so, dass wenn ein update vorhanden ist, er mir "true" zurück gibt. Wenn jedoch kein Update vorhanden ist, gibt er nicht "false" zurück.

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hey double00,
hast Recht, dass ist ein Bug. Das currentUpdateResult bleibt null bzw. auf dem Ergebnis der vorherigen Suche wenn kein Update gefunden wurde. Bis ich das behoben habe, kannst du ja z.B.: so Abfragen ob ein Update verfügbar ist anstelle das Ergebnis der Methode auszuwerten:

if((updateController1.currentUpdateResult != null && (updateController1.currentUpdateResult.UpdatesAvailable) {
    //Updates verfügbar
} else {
    //Programm ist aktuell
}

Das sollte vorerst funktionieren, bis der Fehler behoben ist.

Cheerio

22 Beiträge seit 2008
vor 13 Jahren

Jop, danke Maximilian, so klappt es.

Habe aber noch eine Frage. Wenn ich nun mein Prog anderen zur Verfügung stellen will, dann muss ich nebst dem Programm auch die "updateSystemDotNet.Controller.dll" mitgeben.
Was ist nun aber mit der "updateSystemDotNet.Controller.xml"? Wird die benötigt? Hatte die in einem Test mal wegelassen und das Prog hat auch funktioniert.
Also in wie weit ist die Datei nötig?

Gruß Tom

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hey double00,
die *.xml Datei kannst du weglassen, die ist nur für den Entwickler relevant weil dort die Texte fürs IntelliSense im VS drinstehen.
Zur Vollständigkeit: Die *.pdb kannst du bei Bedarf mitgeben, diese wird benötigt um erweiterte Debuginformationen zu bekommen falls es mit dem updateController mal probleme geben sollte.

Cheerio

742 Beiträge seit 2005
vor 13 Jahren

Gibts von dem Tool auch ne Version in Englisch? Ich bin in einem Team, in dem wir auf Englisch kommunizieren, da kann ich mit Deutsch nicht so viel anfangen.

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hey malignate,
leider gibts die Verwaltungsoberfläche derzeit ausschließlich auf Deutsch. Für Version 2 ist eine mehrsprachige Version geplant, aber die wird wohl erst Ende nächsten Jahres erscheinen, sorry.

H
103 Beiträge seit 2010
vor 13 Jahren

Hey,
ich bekomme zur Zeit einen komischen Fehlermeldung, wenn ich das Projekt öffnen will (siehe angehangene Grafik).

Habe meine Applikation seit einer Woche nicht mehr benutzt und bekam eben beim Starten eine 404 Fehlermeldung, wenn nach Updates gesucht wird.

Ich kann mich nicht erinnern, irgendetwas verändert zu haben, deshalb kommt mir das leicht spanisch vor. Der Ordner in dem die Uploads sind, existiert und er ist sowohl per http (im Browser getestet) als auch per FTP (mit FileZilla getestet) zu erreichen.

Nach welcher Datei sucht das Programm denn?

//edit
Ok, nach ein paar Tests mit neuen Projekten habe ich festgestellt, dass nach der Datei update.xml gesucht wird.
Die existiert aus irgendwelchen mir unbekannten Gründen nicht mehr in dem Update Verzeichnis.

Ich habe jetzt die update.xml von einem anderen Update Projekt kopiert und die Werte (Projektname, Update URL, Projekt ID) angepasst und hochgeladen. Jetzt kann ich das ursprüngliche Projekt wieder öffnen und das Erstellen von Updatepaketen scheint auch zu funktionieren.

Kann es dadurch irgendwie zu Fehlern kommen bzw. muss ich noch irgendwas beachten, wenn ich die update.xml so "rekostruiere"?

PHP Tutorials zum PHP lernen

F
258 Beiträge seit 2008
vor 13 Jahren

Ich hätte noch zwei Fragen:*Gibt es eine Möglichkeit, die Update-Fenster, sowohl beim interaktiven, als auch beim asynchronen Vorgang auch als Fenster in der Taskleiste anzeigen zu lassen? *Wird updateFound des Controllers beim interaktiven Suchen nicht aufgerufen?

Vielleicht habe ich auch einfach etwas übersehen, muss mich grade wieder in das Projekt einarbeiten...
Aber bis hierhin echt eine super gute Arbeit! =)
Mach weiter so! =)

F
258 Beiträge seit 2008
vor 13 Jahren

Ist es vielleicht möglich, dass du statt .NET 4 nur die Clientversion nimmst oder brauchst du das ganze Paket?

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

So, jetzt komm ich endlich mal dazu zu antworten 🙂

Hey Hirnhamster,
das ist sehr komisch das die Datei weg ist. Der updateDesigner überschreibt diese eigentlich immer weshalb ich keine Ahnung warum diese garnicht mehr vorhanden war. Hast du evtl. Zugriff auf den Logs von deinem FTP-Server so dass man nachschauen kann was mit der Datei zuletzt passiert ist? Würde mich mal interessieren...
Und mit dem Austauschen der Daten ist das sone Sache, wenn das so klappt haste Glück gehabt, ansonsten könnte es da u.U. Probleme mit der Signatur der Config geben. Aber wenn das so jetzt geht, dann lieber mal n Backup davon erstellen und das dann nutzen.

Hey Fabian,

Gibt es eine Möglichkeit, die Update-Fenster, sowohl beim interaktiven, als auch beim asynchronen Vorgang auch als Fenster in der Taskleiste anzeigen zu lassen? mmh ... das versteh ich irgendwie nicht, interaktiv ok, kann man optional machen (sofern du die ShowInTaskBar-Property meinst), aber was fürn Fenster willste denn beim asynchronen Vorgang in das Taskleiste haben, da gibts doch gar keines 🤔

Wird updateFound des Controllers beim interaktiven Suchen nicht aufgerufen? Nope, fand ich irgendwie nicht Sinnvoll, zumal du das Ergbnis (ob Updates verfügbar oder nicht) ja übers DialogResult herausbekommst. Die genauen Informationen stehen dann ja in der Eigenschaft currentUpdateResult.

Ist es vielleicht möglich, dass du statt .NET 4 nur die Clientversion nimmst oder brauchst du das ganze Paket? Ich brauch die System.Design.dll die es leider nicht im Clientpaket gibt.

Cheerio

F
258 Beiträge seit 2008
vor 13 Jahren

Hey Fabian,

Gibt es eine Möglichkeit, die Update-Fenster, sowohl beim interaktiven, als auch beim asynchronen Vorgang auch als Fenster in der Taskleiste anzeigen zu lassen?
mmh ... das versteh ich irgendwie nicht, interaktiv ok, kann man optional machen (sofern du die ShowInTaskBar-Property meinst), aber was fürn Fenster willste denn beim asynchronen Vorgang in das Taskleiste haben, da gibts doch gar keines 👶

Naja, ich lasse z.B. beim Start meiner Awendung automatisch auf Updates prüfen.
Wenn etwas gefunden wurde rufe ich folgenden Code auf:

if (controller.showUpdateDialog() == DialogResult.OK && controller.downloadUpdatesDialog() == DialogResult.OK)
            {
                controller.applyUpdate();
            }

Und die zwei Dialoge die nun aufgehen sieht man leider nicht in der Taskbar.
Also können sie recht leicht "verloren gehen" wenn man mal daneben klickt.
Einfach immer optional machen? Ich glaube das wäre die sinnigste Lösung.

Wird updateFound des Controllers beim interaktiven Suchen nicht aufgerufen?
Nope, fand ich irgendwie nicht Sinnvoll, zumal du das Ergbnis (ob Updates verfügbar oder nicht) ja übers DialogResult herausbekommst. Die genauen Informationen stehen dann ja in der Eigenschaft currentUpdateResult.

Ich lasse dort aber mein Log mitlaufen, wäre zumindest also in meinem Fall sinnvoll.
Gibts ne Chance, dass du das schnell einbaust?
Sollte ja eigentlich kein Aufwand sein oder Probleme bereiten.

Ist es vielleicht möglich, dass du statt .NET 4 nur die Clientversion nimmst oder brauchst du das ganze Paket?
Ich brauch die System.Design.dll die es leider nicht im Clientpaket gibt.

Alles klar.

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hallo Fabian,

Gibts ne Chance, dass du das schnell einbaust? Durchaus. Mal schauen, vielleicht schaffe ich es schon Morgen, wenn nicht dann im Laufe der Woche.

Cheerio

Hinweis von herbivore vor 13 Jahren

Anregungen, Verbesserungsvorschläge, Bugreports und Lösung dazu können natürlich gerne in den Thread. Rückfragen oder gar längere Diskussionen du den genannten Punkten sollten aber bitte per PM geführt und dann nur als Ergebnis gepostet werden, damit der Thread übersichtlich bleibt. Vielen Dank!

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Sorry, hat etwas länger gedauert, aber es gibt nun ein Update welches zwei neue Eigenschaften nachrüstet:

  • showDialogsInTaskbar, Updatedialoge in der Taskleiste anzeigen.
  • alwaysRaiseUpdateFoundEvent, das updateFound-Event auch bei der Dialoggestützten Updatesuche werfen.

Hoffe das passt so, wenn nicht bescheid sagen, was noch nachgerüstet werden muss 😃

Cheerio

F
258 Beiträge seit 2008
vor 13 Jahren

Super, das klappt jetzt sehr gut!
Was ich allerdings auch noch gut fände, wenn du die Fenster Modal öffnen würdest.
Das reduziert nochmals die Chance, dass man ein Updatefenster einfach ausversehen gar nicht sieht.
Ist mir nämlich beim Testen ein paar Mal passiert...
Kannst du ja auch anpassbar machen über eine kleine Property.

Ansonsten bin ich grade wunschlos glücklich! Super Sache! =)

Achja, wie stehts eigentlich um diese neue überarbeitete Version?

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hey Fabian,

Was ich allerdings auch noch gut fände, wenn du die Fenster Modal öffnen würdest. Öhm das mach ich eigentlich schon, die werden brav mit ShowDialog geöffnet. Hast du der Methode ein Parent übergeben?

Achja, wie stehts eigentlich um diese neue überarbeitete Version? Angestrebter Releasetermin ist irgendwann vor Weihnachten, also noch ein knapper Monat. Derzeit ist noch ein bisschen was zu tun, aber ich denke das klappt. Neuigkeiten dazu gibts wie immer in meinem Blog zu lesen und wenn ein neuer Meilenstein erreicht ist, werde ich das natürlich auch hier Posten 😃

F
258 Beiträge seit 2008
vor 13 Jahren

Nähere Infos hast du per PM.

Noch eine Frage zu den Servicepacks:
Im Updater werden die Versionen vor einem Servicepack ausgegraut dargestellt.
Wenn man sucht werden die Updates davor aber noch angezeigt.
Runtergeladen werden sie aber ja nicht oder? Anzeige ist nur wegen dem Changelog?

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Mh, da scheint etwas nicht zu stimmen. Denn die Änderungen sollten nicht angezeigt werden (obwohls ein nettes Feature wäre, gleich mal notieren). Ich habs ebend mal bei mir getestet und da werden die die Versionen nach dem ServicePack korrekt ignoriert, weshalb ich das hier nich wirklich nachstellen kann 🤔

[edit]Wir konnten das Problem lokalisieren. Das beschriebene Verhalten tritt ein, wenn eine niedrigere Version nach dem Erstellen der ServicePack-Version hinzugefügt wurde. Ein Fix ist in Arbeit.[/edit]

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Es gibt für das Problem mit dem ServicePack bei welchem nicht alle früheren Updates unterbunden wurden einen Fix. Einfach die integrierte Updatesuche anschmeißen und auf die Version 1.1.80.1128 aktualisieren 😃

Cheerio

B
375 Beiträge seit 2007
vor 13 Jahren

Hallo, nachdem ich ein Update durchgeführt habe für diese Anwendung kann ich die Software nicht mehr starten (Windows 7):


Fehlerprotokoll:

Fehlerbucket , Typ 0
Ereignisname: CLR20r3
Antwort: Nicht verfügbar
CAB-Datei-ID: 0

Problemsignatur:
P1: updatesystemdotnet.designer.exe
P2: 1.1.80.1128
P3: 4cf2871d
P4: updateSystemDotNet.Designer
P5: 1.1.80.1128
P6: 4cf2871d
P7: 267
P8: 49
P9: System.IO.FileLoadException
P10: 

Angefügte Dateien:
C:\Users\Andy\AppData\Local\Temp\WER512D.tmp.WERInternalMetadata.xml

Diese Dateien befinden sich möglicherweise hier:
C:\Users\Andy\AppData\Local\Microsoft\Windows\WER\ReportArchive\AppCrash_updatesystemdotn_192d60f455574b74268868f6809ae33b91f8b26b_0e296c7a

Analysesymbol: 
Es wird erneut nach einer Lösung gesucht: 0
Berichts-ID: 14e8467d-0530-11e0-9e3c-001c25e36d67
Berichtstatus: 1

Was kann da schief gelaufen sein? Danke!

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hey,
das ist komisch, ich teste die Updates ja immer vorher selbst (auch den Updatevorgang als solchen) und da ist alles ohne Probleme verlaufen, auch die Anwendung startet sauber. Das Update gibt es ja auch schon ein weilchen, und bisher hat niemand anderes ein derartiges Problem berichtet. Dann bleibt eigentlich nur, dass beim Update selber was schiefgegangen ist.
Wie dem auch sei, lad dir mal von hier (klick) das aktuelle Setup herunter und überschreib damit die aktuelle Installation, danach müsste die Anwendung wieder laufen.

Cheerio

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hallo zusammen,
es gibt seit Gestern eine erste Beta der neuen Version 1.5. Läuft schon recht gut, was es da alles so neues so gibt, habe ich hier in einem Blogartikel zusammengefasst: updateSystem.NET 1.5 - Erste Beta verfügbar

Cheerio

Edit
Ein Downloadlink wäre wohl noch hilfreich: Download 😃

F
258 Beiträge seit 2008
vor 13 Jahren

Ich hätte noch eine kleine Anregung.
Ich kam auf die Idee, als ich mir Gedanken darüber machte, was passiert, wenn der Updater feststellt, dass ein Paket korrupt ist.

In diesem Fall gibt es zwei Möglichkeiten: entweder ist der Download des Pakets fehlerhaft oder jemand hat mutwillig das Paket verändert.
Im zweiten Fall ist natürlich größte Vorsicht geboten.

Nun würde mich interessieren, was in so einem Fall passiert. Wird der Entwickler irgendwie darüber benachrichtigt?

Meine Idee bestände nun darin, auf die Startseite eine kleine Übersicht einzubauen, in der man aktuelle Ereignisse präsentiert bekommt.
Dort könnte man z.B. auch die neusten Downloadzahlen anzeigen, sofern die Statistik aktiviert ist.

Das ganze könnte man auch schon als kleines PopUp-Fenster realisieren.
Unter anderem wäre dies dann auch ein geeigneter Platz um dem Entwickler mitzuteilen, dass eines seiner Updates kaputt ist.
(Natürlich müsste der Client das Paket öfters herunterladen, um festzustellen, dass es wirklich kaputt ist und nicht am Download lag.)

Kommst du so ein bisschen mit, worauf ich hinaus will? 😉 Klingt jetzt alles ein bisschen kompliziert glaube ich 😉

Achja, warum zeigt dein Updater die neue Betaversion nicht an wenn ich danach suche? Suche nach Beta ist natürlich aktiv.

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hey Fabian,

Kommst du so ein bisschen mit, worauf ich hinaus will? 😉 Ja durchaus. Die Idee als solche ist schon cool wenn so der Entwickler automatisch erfährt, dass mit einem bestimmten Updatepaket etwas nicht stimmt. Allerdings macht mir die Umsetzung noch ein bisschen Kopfschmerzen. Am einfachsten wäre es wohl dafür den Statistikservice etwas aufzubohren aber wenn ich nicht aufpasse entwickelt sich das dann zu einem Exceptiontracker (ich kenn mich :evil: ) und das wäre dann übers Ziel hinausgeschossen. Ich muss mir da mal gedanken drüber machen 🙂

Achja, warum zeigt dein Updater die neue Betaversion nicht an wenn ich danach suche? Suche nach Beta ist natürlich aktiv. Das läßt sich so schwer sagen warum das nicht geht, irgendein Parameter/Einstellung wird das vermutlich verhindern. Am besten wäre es, wenn du mir die URL zu den Updates und einen Screenshot von dem konfigurierten PropertyGrid schicken könntest (per PM), so kann ich dann mal schauen woran es liegt bevor hier das große Rätselraten losgeht. 🙂

Cheerio

F
258 Beiträge seit 2008
vor 13 Jahren

Nene, dein Designer findet das neue Beta-Update nicht...

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Achso, nee kann er auch nicht, weil ich das nicht als Update veröffentlicht habe 🙂 Die nächsten Betaversionen gibt wieder übers Autoupdate aber diesmal wollte ich noch ein bisschen den Installer testen den ich inzwischen ja auch selber geschrieben habe um zu schauen, ob es dabei irgendwelche Probleme gibt. =)

F
258 Beiträge seit 2008
vor 13 Jahren

Ich hätte noch eine Anregung. Und zwar wäre es ganz schön, wenn der Statistikserver aufzeichnen könnte, wie viele individuelle Benutzer es gibt.
Dazu müsste das eigentliche Programm dem Updater nur z.B. eine vorher erzeugte und lokal gespeicherte GUID mitgeben, die dann zur Identifizierung genutzt wird.

Damit könnte der Statistikserver dann sehen wie viele Benutzer es gibt.

Ich habe auch gerade mal die Beta ausgepackt, die sieht ja richtig gut aus! =)
Allerdings vermisse ich noch die Einstellungen. Kommen die noch?
Werden wohl noch kommen, wenn der Link schon da ist 😉

Ansonsten könnte die Beta noch einen kleinen Dialog vertragen, mit dem man dir Fehler/Probleme melden kann...
Ohne den Umweg über das Forum und ohne, dass eine Unhandled Exception auftritt.

EDIT: Habe den Feedback-Dialog gerade gesehen, war aber auch ziemlich versteckt 😉

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hey Fabian,

Ich hätte noch eine Anregung. Und zwar wäre es ganz schön, wenn der Statistikserver aufzeichnen könnte, wie viele individuelle Benutzer es gibt.
Dazu müsste das eigentliche Programm dem Updater nur z.B. eine vorher erzeugte und lokal gespeicherte GUID mitgeben, die dann zur Identifizierung genutzt wird.

Damit könnte der Statistikserver dann sehen wie viele Benutzer es gibt.

Muss ich mir mal überlegen. Vor allem ob das Datenschutztechnisch in Ordnung geht.

Ich habe auch gerade mal die Beta ausgepackt, die sieht ja richtig gut aus! =)
Allerdings vermisse ich noch die Einstellungen. Kommen die noch? Klaro, einen Link dazu (wenn auch deaktiviert) gibts ja schon (Startseite oben rechts).

Ansonsten könnte die Beta noch einen kleinen Dialog vertragen, mit dem man dir Fehler/Probleme melden kann...
Ohne den Umweg über das Forum und ohne, dass eine Unhandled Exception auftritt. Also wenn ein unbehandelter Fehler auftritt hast du immer die Möglichkeit mir diesen als Report zuzusenden (gibt da n Button in dem dialog für). Ansonsten kannst du mir auch direkt aus dem Programm heraus Feedback senden. Geht auch über einen Link oben rechts auf der Startseite 😃
Edit: Hat sich erledigt.

Cheerio

F
258 Beiträge seit 2008
vor 13 Jahren

Damit könnte der Statistikserver dann sehen wie viele Benutzer es gibt.
Muss ich mir mal überlegen. Vor allem ob das Datenschutztechnisch in Ordnung geht.

Jo das wären auch meine größten Bedenken.
Aber wenn man die User nicht identifizieren kann, sondern nur weiß, dass da ein User ist, wäre das okay denke ich.

Vielleicht kann man auch nicht aufzeichnen wie oft jemand abfragt, sondern nur, DASS er abfragt. Wenn dieser User dann mehr als eine Woche/Monat/Jahr nicht mehr gesucht hat wird er gestrichen.

Mir gehts ja nicht darum zu wissen, wer wann wie oft abfragt, sondern darum, zu wissen, wie viele User mein Programm nutzen. Der Rest ist mir ja egal.

F
258 Beiträge seit 2008
vor 13 Jahren

Wie deklariere ich im Programm selbst denn meine Betaversion korrekt?
Angenommen, ich habe die Version 1.3.0.2315 Beta 1 und möchte nun dass er mir die Version 1.3.0.4563 Beta 2 als Update findet...
Was muss ich dem Updater als Versionsstring übergeben? Bzw. wie verlgeicht der die Beta Versionen?
Gäbe da ja ein paar Möglichkeiten: *1.3.0.4563 Beta 1 *1.3.0.4563 (Beta 1) *1.3.0.4563 Beta1 *1.3.0.4563 (Beta1)

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

So, endlich Urlaub 👍 Kann mich nun wieder mehr ums Updatesystem kümmern.

Was muss ich dem Updater als Versionsstring übergeben?

Als Versionsstring übergibst du nur die Versionnummer (z.B.: 1.2.3.4) ohne Beta oder sonst was. Das Beta- bzw. Alphaflag und den Step setzt du in den erweiterten Eigenschaften der Eigenschaft releaseInfo (s. Screenshot). 🙂

Bzw. wie verlgeicht der die Beta Versionen?

Es wird erst die Versionnummer (z.B. 1.0.1 vs. 1.0.2) verglichen, wenn diese gleich ist, wird der Releasestatus verglichen (z.B. Beta vs. Alpha), wenn auch der gleich ist wird der "Step" (z.B. Beta 1 vs. Beta 2) verglichen.

Hoffe das klärt deine Fragen, Cheerio

F
258 Beiträge seit 2008
vor 13 Jahren

Oh, okay...
Das ist schade... Aber eigentlich auch nicht so schlimm 😉

J
1.114 Beiträge seit 2007
vor 13 Jahren

Hi Maximilian,

kann es sein, dass in der Beta Version ein Setzen des Flags

updateController1.processSafetyLevel = updateSystemDotNet.processSafetyLevel.AskNever;

keine Auswirkungen mehr hat. Jedenfalls poppt bei mir trotzdem das Windows Fenster auf, um das Update mit Admin Rechten auszuführen. Ich möchte das eigentlich unterbinden.

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hey Jelly,
daran habe ich eigentlich nichts geändert 🤔 ich schaus mir mal an.

Cheerio

F
258 Beiträge seit 2008
vor 13 Jahren

Hey Maximilian,
ich habe noch einen Vorschlag: man kann Update-Pakete im Moment nur dann bearbeiten, wenn die alte Verzeichnisstruktur beim Upload des Pakets noch vorhanden ist.
Negativer Nebeneffekt: Du kannst die Administration effektiv nur auf einem Computer verwenden.
Auf einem anderen Computer kannst du nur neue Pakete hochladen, bestehende aber nicht ändern.
Daher meine Idee: Beim Bearbeiten erst das Paket komplett runterladen, dann temporär speichern, bearbeiten und daraus dann das neue Paket erstellen.

Fabi

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hey Fabian,
hervorangende Idee. Ich habe mir schon öfters Gedanken gemacht wie man das am besten machen könnte aber da habe ich nicht dran gedacht. Das wird direkt übernommen 😃

Danke und Cheerio

F
258 Beiträge seit 2008
vor 13 Jahren

Hey,
ist es eigentlich auch möglich ganze Verzeichnisse zu löschen?

F
258 Beiträge seit 2008
vor 13 Jahren

Ach und noch was: du könntest unter Win7 bei der Administration die letzen Projekte ja in diesen Startleisten-Dialog reinpacken (Rechtsklick).
Das wäre sehr praktisch. =)

V
5 Beiträge seit 2011
vor 13 Jahren
CommandLine

Hallo und frohes neues Jahr....

ich vermisse in der neuen Version die so praktische Möglichkeit, eine Updatepaket batchgesteuert über die CommandLine.exe zu erstellen.
Die alte Version scheint nicht kompatibel zu sein - ich bekomme eine XML Exception.

Danke u. Gruss,
Frank

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hey Fabian,

ist es eigentlich auch möglich ganze Verzeichnisse zu löschen?

Nee, jedenfalls noch nicht, wandert aber auf meine ToDo-Liste für das kommende Release.

Ach und noch was: du könntest unter Win7 bei der Administration die letzen Projekte ja in diesen Startleisten-Dialog reinpacken (Rechtsklick).
Das wäre sehr praktisch. =)

Das passiert soweit ich weiß automatisch sobald die Administration mit den Updateprojekten asoziiert wird (erledigt der Setup ab der finalen Version automatisch). 😃

Hey Frank,
gemach gemach, auch das wird es wieder geben. Es ist nur noch nicht implementiert 😃

Cheerio

V
5 Beiträge seit 2011
vor 13 Jahren

alles klar, dann warte ich...

habe gerade festgestellt, dass ich das alte CommandLine mit der alten Projektdatei weiterhin verwenden kann.

Noch eine Frage:
ich würde gerne über die UpdateDefinition.xml den Releasestatus setzen. Hätte jetzt gedacht, dass der Parameter "isBeta" dafür zuständig ist. Tut es aber nicht.
Es würde ja auch noch der Parameter für den Step fehlen, wenn es den nicht schon gibt.
Kann ich damit auch noch rechnen?

Danke,
Frank

H
103 Beiträge seit 2010
vor 13 Jahren
Zugriff auf Changelog

Hey,
wie genau greift man manuell auf den Changelog eines Updates zu?
Ich versuche seit einer Stunde irgenwie hinter den Sinn der changelogDictionary Datenstruktur zu kommen, aber ich habe keine Ahnung wo ich einen Key vom Typ enhancedVersion her bekomme um auf den Changelog eines bestimmten Updates zuzugreifen.

Kurzer Beispielcode wäre very appreciated 😃

PHP Tutorials zum PHP lernen

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

Hey Jelly,
die processSafetyLevel-Eigenschaft funktioniert nachwievor, allerdings hat diese eine andere Bedeutung als die, die du erwartet hast. Diese bezieht sich ausschließlich auf das ausführen von Prozessen während des Updates die erhöhte Rechte benötigen.
Wenn du nicht möchtest, dass vor dem Update der UAC-Dialog aufpoppt, musst du die Eigenschaft requestElevation auf False setzen. Beachte dabei aber, dass der Updater dann nur mit normalen Benutzerrechten unterwegs ist und ggf. nicht mehr ins Programme-Verzeichnis und co schreiben darf 😃

Hey Frank,
mit der neuen CommandLine-Version kann man dann natürlich auch den releaseStatus setzen.

Hey Hirnhamster,
kommt drauf an zu was du den Changelog brauchst, wenn du den explizit zu einem bestimmten Updatepaket brauchst, dann geht das recht einfach:

updatePackage package = //Irgendwoher das Updatepaket ermitteln...
MessageBox.Show(updateController1.currentUpdateResult.Changelogs[package].germanChanges);

Hoffe das hilft, wenn nicht musst du mir sagen zu welcher Gelegenheit du wie den Changelog benötigst 😃

Cheerio

J
1.114 Beiträge seit 2007
vor 13 Jahren

Hallo Maximilian,

ups, mein Fehler. Die requestElevation Eigenschaft ist natürlich das Flag, das zu setzen gilt 8)

Kannst dir ein Bier bestellen und mir die Rechnung schicken 😄

V
5 Beiträge seit 2011
vor 13 Jahren
Update über Proxy

Hallo,

ich habe das Problem, dass ein Kunde von seinem Arbeitsplatz aus nur über einen Proxy ins Internet kommt. Für diesen Proxy wird die Netwerkdomänenanmeldung als Authentifizierung verwendet, s.d. ich die Proxy-Attribute im updatecontroller nicht verwenden kann, da ich das Passwort dort nicht ablegen kann.
Gibt es eine Möglichkeit die Netzwerk-Credentials zu übergeben?

Könnte ich den upatecontroller auch nutzen, um ein "offline" Update durchzuführen, d.h. ich schicke dem Kunden eine Updatedatei, mit der er das Update ohne Zugriff auf einen Webserver installieren könnte.

Danke für eine Antwort....

Gruss,
Frank

Maximilian Themenstarter:in
238 Beiträge seit 2007
vor 13 Jahren

n'abend Frank,
ist bei dem Kunden der Proxy in den IE/System-Einstellungen eingetragen? Wenn ja sollte sich der WebRequest eigentlich diese automatisch holen wenn kein Proxy im updateController eingetragen ist. Ich werde das mal am Wochenende versuchen hier nachzustellen, müsste eigentlich so funktionieren wenn ich das richtig in Errinerung habe.

Offlineupdates sind zur Zeit nicht möglich, ich werde mir das für spätere Versionen mal notieren, aber das ist auch so ein Feature was nicht von heut auf morgen umsetzbar ist.

Cheerio

V
5 Beiträge seit 2011
vor 13 Jahren

ist bei dem Kunden der Proxy in den IE/System-Einstellungen eingetragen? Wenn ja sollte sich der WebRequest eigentlich diese automatisch holen wenn kein Proxy im updateController eingetragen ist.

Proxy ist im IE eingetragen und im updateController proxyenabled=false => bekomme Fehlermeldung "Proxauthentifizierung erforderlich"

Offlineupdates sind zur Zeit nicht möglich, ich werde mir das für spätere Versionen mal notieren, aber das ist auch so ein Feature was nicht von heut auf morgen umsetzbar ist.

das ist klar - danke für die Info...

1.029 Beiträge seit 2010
vor 13 Jahren

[Version: Beta, v1.5.1.115]

Hallo,

zuerst mal ein kleines Feedback:
Tolle Sache dein UpdateSystem, genial einfach - und macht richtig Spaß es zu bedienen 🙂 Freut mich sehr, dass es eine freie Implementierung in solcher Qualität gibt 🙂

Zum Proxy:
Mit manuellen Eintragungen, welche alle anderen Programm akzeptieren kam ich leider überhaupt garnicht zum Erfolg - Bekam immer nur die Fehlermeldung, dass ein WebClient eine Ausnahme verursacht hätte - ist in meinem Fall aber nicht weiter schlimm, da er dafür ohne Murren dazu in der Lage ist sich die Einstellungen vom IE zu besorgen, womit er es brav über den Proxy schafft 🙂 (MS ISA-Server 2006)

Das automatische Finden der Proxy-Daten schafft (von deinen Programm einmal abgesehen) sonst eigentlich absolut kein Programm - musste bisher immer manuell
eingeben. 👍 👍 👍 👍 👍

Ein Problem habe ich allerdings:
Die o.g. Version ist in der Lage

  1. Das hochgeladene Update zu finden
  2. Das gefundene Update zu downloaden
  3. UAC-Dialog
    Doch dann bekomme ich folgende Fehlermeldung:> Fehlermeldung:

Das Update konnte aufgrund folgenden Fehlers nicht fortgesetzt werden:
Ungültige Syntax in Zeile 1

  • Siehe auch Bild im Anhang.

Werde das Ganze im Laufe das Tages noch mit einer "Nicht-Beta" testen und entsprechende Rückmeldung hinterlassen.

So far:
Vielen Dank für dieses ECHT! gute Programm - weiter so ! 🙂

Gruß

Achim

[EDIT für Nicht-Beta-Version v1.1 Build 90⚠
Die Fehlermeldung mit der falschen Syntax erhalte ich in dieser Version nicht -
das Update läuft super sauber durch - macht richtig Spaß 🙂 -
dafür erhalte ich allerdings beim Start der Administrationsoberfläche, dass
die Updatesuche gescheitert ist aufgrund von> Fehlermeldung:

Proxyauthentifizierung gescheitet

  • da dies allerdings in der
    Beta-Version behoben ist sei dies nur am Rande erwähnt.