nUpdate - Die komfortable Updatelösung

    • Release
    • Open Source

    Es gibt 989 Antworten in diesem Thema. Der letzte Beitrag () ist von Archangel.

      Okay, verstehe. Ja, also bin auf jeden Fall offen dafür, dass nUpdate an die Methoden der modernen und agilen Softwareentwicklung angepasst wird. Ist ja eh noch auf einem veralteten Stand momentan.
      Das sollte natürlich dann alles auch noch einfacher sein. :) Daher finde ich die Ideen echt gut und wäre auf jeden Fall dafür, das alles umzusetzen.

      Grüße
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
      Hi, ich dachte, ich melde mich auch mal wieder zu Wort. Mir ist ein kleiner Fehler im Zusammenhang von FTP und IPv6 untergekommen: Jedes wenn ich in der Verwaltung auf Check status klicke, kommt diese Meldung.
      Spoiler anzeigen

      Quellcode

      1. Starksoft.Aspen.Ftps.FtpsDataTransferException: An error occurred while putting fileName 'updates.json'. (Last Server Response: You cannot use PASV on IPv6 connections. Use EPSV instead. CannotOpenDataConnection) ---> Starksoft.Aspen.Ftps.FtpsDataConnectionException: An error occurred while issuing up a passive FTP connection command. ---> Starksoft.Aspen.Ftps.FtpsResponseException: FTP command failed. (Last Server Response: You cannot use PASV on IPv6 connections. Use EPSV instead. CannotOpenDataConnection)
      2. bei Starksoft.Aspen.Ftps.FtpsBase.WaitForHappyCodes(Int32 timeout, FtpsResponseCode[] happyResponseCodes)
      3. bei Starksoft.Aspen.Ftps.FtpsBase.SendRequest(FtpsRequest request)
      4. bei Starksoft.Aspen.Ftps.FtpsBase.SendPasvCmd(String& host, Int32& port)
      5. --- Ende der internen Ausnahmestapelüberwachung ---
      6. bei Starksoft.Aspen.Ftps.FtpsBase.SendPasvCmd(String& host, Int32& port)
      7. bei Starksoft.Aspen.Ftps.FtpsBase.CreatePassiveConn()
      8. bei Starksoft.Aspen.Ftps.FtpsBase.OpenDataConnAndTransferData(TransferDirection direction, FtpsRequest request, Stream data, Int64 restartPosition)
      9. bei Starksoft.Aspen.Ftps.FtpsClient.PutFile(Stream inputStream, String remotePath, FileAction action)
      10. --- Ende der internen Ausnahmestapelüberwachung ---
      11. bei Starksoft.Aspen.Ftps.FtpsClient.PutFile(Stream inputStream, String remotePath, FileAction action)
      12. bei Starksoft.Aspen.Ftps.FtpsClient.PutFile(String localPath, FileAction action)
      13. bei nUpdate.Administration.Core.Ftp.Service.FtpTransferService.UploadFile(String filePath) in C:\Users\domin\Source\Repos\nUpdate\nUpdate.Administration\Core\Ftp\Service\FtpTransferService.cs:Zeile 211.
      14. bei nUpdate.Administration.Core.FtpManager.UploadFile(String filePath) in C:\Users\domin\Source\Repos\nUpdate\nUpdate.Administration\Core\FtpManager.cs:Zeile 291.
      15. bei nUpdate.Administration.UI.Dialogs.ProjectDialog.<CheckUpdateConfigurationStatus>d__65.MoveNext() in C:\Users\domin\Source\Repos\nUpdate\nUpdate.Administration\UI\Dialogs\ProjectDialog.cs:Zeile 1668.


      Wenn ich versuche, ein Update zu verteilen, bekomme ich folgendes:
      Spoiler anzeigen

      Quellcode

      1. System.Net.WebException: Der Remoteserver hat einen Fehler zurückgegeben: (404) Nicht gefunden.
      2. bei System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
      3. bei System.Net.WebClient.DownloadString(Uri address)
      4. bei nUpdate.Updating.UpdateConfiguration.Download(Uri configFileUri, NetworkCredential credentials, WebProxy proxy, Int32 timeout) in C:\Users\domin\Source\Repos\nUpdate\nUpdate.Shared\Updating\UpdateConfiguration.cs:Zeile 117.
      5. bei nUpdate.Administration.UI.Dialogs.PackageAddDialog.<InitializePackage>b__84_0() in C:\Users\domin\Source\Repos\nUpdate\nUpdate.Administration\UI\Dialogs\PackageAddDialog.cs:Zeile 1072.


      Das komische ist, dass ich bei der Projekterstellung den Ordner auswählen konnte, nachdem ich auf IPv6 umgestellt habe. Ich konnte problemlos die Ordner auf dem Server durchforsten.

      Wenn du weitere Infos brauchst, einfach sagen.

      Grüße
      Alle Angaben sind ohne Gewähr, jedoch mit Pistole. Glücksspiel, Drogen und leckeres Essen können süchtig machen.

      43232069737420636f6f6c21
      Kannst Du mir mal Deine Projektdatei (.nupdproj) (per PN) zukommen lassen?

      Grüße
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
      Hallo zusammen,

      ich bin auf nUpdate gestoßen und bin total begeistert von der Möglichkeit zur Update Verteilung durch dieses Tool! Jetzt versuche ich wieder und wieder das ganze mit meinem Programm zu laufen zu bringen und scheitere an dem Server. der das ganze bereit stellen soll. Ich bekomme folgende Meldung wenn ich im Administrationstool das eingerichtete Projekt aufrufe:

      Durch einen Click auf CheckStatus ist diese Meldung reproduzierbar.
      Auf dem Webserver ist kein .htaccess.
      Eine leere Updates.JSON Datei wurde im ersten Versuch mal auf dem Server erzeugt. Ich habe das Projekt, wie gesagt mehrmals neu erstellt und die Datei auf dem Server auch gelöscht. Mittlerweile wird sie nicht mehr erstellt und ich weiß nicht wirklich warum diese Meldung kommt. Kann mir da bitte jemand auf die Sprünge helfen?

      Vielen Dank!
      Die Meldung besagt, dass die Datei nicht über HTTP(S) abgerufen werden kann. Also wird vmtl. die Update-URL auf einen anderen Ort zeigen, als den, wo die Datei liegt. Prüfe das nochmal.

      Grüße
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
      Hallo Trade,

      vielen Dank für die schnelle Rückmeldung!

      Vielleicht verstehe ich das ja nicht richtig, wie das Paket entworfen wird? Ich komme nicht dahin eines online zu stellen.
      Wenn ich unter AddNewPackage eines erstelle kommt nach dem Klick auf erstellen:
      "Error while Loading the old configuration" Der Remoteserver hat einen Fehler zurückgegeben. 404 nicht gefunden.
      An den Punkt etwas online zu haben bin ich allerdings ja auch noch nicht angekommen. Was genau sucht das Programm denn eigentlich Online? Kann oder muss ich manuell etwas online stellen?

      Was die Update-URL angeht, die zeigt auf ein Verzeichnis in dem es auch liegen sollte, sobald ich erfolgreich war mit der Erstellung.

      Viele Grüße
      Die Konfiguration ist die ​updates.json. DIe versucht er zu laden, findet diese aber nicht. Solange Du diese Datei nicht hast, funktioniert das Updaten natürlich nicht, weil dort die Paketinfos drin sind.
      Also die URL zeigt genau auf den Ordner, wo die Datei auf dem FTP-Server auch liegt?

      Grüße
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
      Nein, die Datei ist, wie Eingangs erwähnt, leider leer gewesen. Dann habe ich sie mal gelöscht in der Hoffnung das Sie wieder neu erzeugt wird, aber das ist nicht passiert.
      An welcher Stelle wird diese Datei den erzeugt?
      Bei Adden eines UpdatePackages? Das will ja auch gerade nicht laufen...

      Viele Grüße und Danke für deine Unterstützung!
      Nachtrag:
      Vielleicht ist es ja hilfreich, wenn ich genau beschreibe wie ich vorgehe:
      • Klick auf New Project
      • Ich vergebe einen Namen
      • Ich gebe den Pfad zum Verzeichnis im Web an: Seitenname.de/service
      • Den Pfad zur lokalen Nupdproj Datei. Da der Dialog über das ...Menü eine nupdproj Datei erwartet, gebe ich den Pfad manuell ein, da es die Datei ja noch nicht gibt. (Richtig so? Hoffe ich?)
      • Save Credentials
      • Https überspringe ich
      • Ich gebe die FTP Adresse an
      • Die Zugangsdaten
      • und wähle den Pfad auf dem Server aus, der dem Pfad auf der ersten Seite entspricht, nur das das Rootverzeichnis jetzt www ist, also: www/service
      • durch den Rest durch, Verbindungstest ist positiv
      Wenn ich das jetzt erstellte Projekt öffne, dann kommt die im ersten Post genannte Fehlermeldung.

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Archangel“ ()

      Die Datei wird beim Öffnen des Projektes automatisch erzeugt und hochgeladen. Allerdings schlägt die Prüfung fehl, ob sie per HTTP(S) abrufbar ist. Scheinbar gewährt die URL keinen Zugriff darauf. Wenn Du mal die Update-URL nimmst und ein ​/updates.json anhängst und das im Browser eingibst ... wird die Datei dann angezeigt?

      Grüße
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
      Habe ich soeben gemacht und wird nicht angezeigt. Ich bin aber sowieso mit einem FTP Programm parallel drauf. Ich könnte sie auch manuell auf den Server schieben, wenn es eine lokale Kopie gibt.
      PS: ich habe den letzten Post noch editiert und meine Vorgehensweise beschrieben.

      Archangel schrieb:

      wird nicht angezeigt
      Da liegt das Problem. Die URL deckt sich nicht mit dem Ort, wo die Datei liegt. Sonst würdest Du sie ja darüber auch im Browser erreichen.
      Bist Du sicher, dass das die URL des Ordners ist, den Du am im FTP ansteuerst?

      Grüße
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:

      Archangel schrieb:

      Aber sie ist leer, 0 Kb.
      Das ist normal. Sind ja noch keine Pakete vorhanden zu dem Zeitpunkt.
      Und jetzt muss nur noch die URL so passen, dass Du auf die Datei zugreifen kannst.

      Grüße
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
      Sind meine oben beschriebenen Angaben denn nicht richtig?
      Die Update Url zeigt auf das Service Verzeichnis und auf der FTP Data Seite ist es auch das Service Verzeichnis, das sollte also passen.

      Was mir im Tutorial von VincentTB noch nicht ganz klar war:
      Anschließend geben wir noch den Ort von nUpdate an. Ihr solltet nUpdate in einem Unterverzeichnis erstellen,

      Das habe ich in das Visual Studio Projektverzeichnis verwiesen, wo ich dann die .nupdproj erstellt wurde. Muss dort noch mehr liegen ???
      Viele Grüße

      Archangel schrieb:

      Die Update Url zeigt auf das Service Verzeichnis und auf der FTP Data Seite ist es auch das Service Verzeichnis, das sollte also passen.
      Hm okay, aber wieso findet er dann die updates.json mit der URL nicht? Vielleicht wäre es ganz gut, wenn Du die URL mal postest.

      Archangel schrieb:

      Muss dort noch mehr liegen ???
      Nein, das ist ja nur der Ort für die .nupdproj. Wo Du die ablegst ist ja egal. Kann überall sein.

      Grüße
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
      Wenn ich das im Browser aufrufe ist relativ schnell klar, was das Problem ist: "HTTP-Fehler 404.3 - Not FoundDie angeforderte Seite kann aufgrund einer Konfigurationserweiterung nicht angezeigt werden. Wenn es sich bei der Seite um ein Skript handelt, müssen Sie einen Handler hinzufügen. Wenn die Datei heruntergeladen werden soll, müssen Sie eine MIME-Zuordnung hinzufügen."
      Das muss natürlich behoben werden.

      Grüße
      #define for for(int z=0;z<2;++z)for // Have fun!
      Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

      Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
      @Archangel Ist das nur ein Hosting Paket oder hast du einen virtuellen/dedicated Server ?

      Der Server ist nämlich IIS und wenn du einen virtuelle oder dedizierten Server hast, hast du selbst Zugriff auf IIS. In diesem Fall kannst du für .json einfach einen Mime Type bei IIS / Deiner Site hinzufügen.
      kc.author-it.com/reader/rZX_xg…vg/tJ_dtamADw56JM2lei4j1A

      Falls du nur ein Hosting Paket hast, musst du tatsächlich deinen Provider anschreiben und darum bitten den Mime Type hinzufügen zu lassen. Warum ein Hosting Paket dann aber auf IIS setzt ist mir zweifelhaft und eher ungewöhnlich, daher gehe ich davon aus das du einen virtuellen oder dedizierten Server gemietet hast