Beiträge von Drexel

    Der Pfad zeigt aber wohl auf deinen PC ;) Jedenfalls heiße ich weder Matthias, noch habe ich das Programm da liegen :D

    Klar, ich hab die PDB Dateien mit ausgeliefert, da stehen Debug Informationen drin und da verweist er natürlich auf absolute Dateipfade von dem Rechner, auf dem das Programm kompiliert wurde, also auf meine Pfade. =) Aber dadurch kann er halt vom Quellcode den Dateinamen und die Zeilennummer ausgeben, das ist schonmal hilfreich.

    Version 1.1.0.1 ist online: https://1drv.ms/u/s!AlNGd4g1Vh9rmHAvaCyZ5nvtOkDF?e=5vhucP


    Folgendes hat sich geändert:


    Neue Features:

    • Gui Anordnung bei sehr langen Dateinamen oder Titeln, die Umbrüche in den Controls erfordern verbessert.


    Bugfixes

    • NullReference, wenn ein Template ohne Bild erstellt wird gefixt.
    • Wenn ein Fallback Thumbnail mit gleichem Namen schon vorhanden ist unter Vidup\FallbackThumbnailImages, wird am Ende der Datei ein Zahl angehängt um die vorhandene Datei nicht zu überschreiben. Leider war in der Logik zum Anhängen der Zahl der Ordner VidUp\TemplateImages fest verdrahtet, also sind die Bilder im falschen Ordner gelandet.
    • Nicht benötigte Bilder unter Vidup\FallbackThumbnailImages und VidUp\TemplateImages wurden nicht in allen Fällen gelöscht.


    bei Drexel.VidUp.JSON.JsonSerialization.DeserializeTemplateList() in D:\Daten\Matthias\Dokumente\Visual Studio 2019\VidUp\VidUp.Json\JsonSerialization.cs:Zeile 103.

    -> Bei der Deserialisierung geht was schief. ;) Also beim Laden des Json Zeugs. Wenn ich mir anschauen soll, was genau, müsstest Du mir mal Deine JSon Dateien zur Verfügung stellen...


    Wegen des Setups könntest Du mal in die Windows Ereignisanzeige unter Windows-Protokolle->Anwendung schauen. Da steht bei mir ein Eintrag für eine erfolgreiche Installation drin, evtl steht da ja bei Dir ein Fehler. Die Installer Datenbank kann auch schon mal zickig sein und zu Problemen führen...


    Zu meinem Edit dazu auch interessant:

    https://github.com/microsoft/dotnet/issues/431


    Wenn mein Tool läuft und Drexels nicht, würde ich vermuten, dass es an WPF liegt. Das ist der größte Unterschied zwischen seinem und meinem Tool, deswegen würde ich da zuerst suchen. Ich nutze Windows Forms, was zwar nicht annähernd so geil ist, wie WPF, aber dafür idR deutlich kompatibler.

    Windows Forms kriegt man eingeschränkt sogar unter Linux zum Laufen, während WPF faktisch Windows-Only ist (und da auch manchmal etwas sehr wählerisch), dafür aber auf DirectX aufbaut, mehr Möglichkeiten zum Design bietet und sehr viel besser zu entwickeln ist.

    Seit .NET Core 3.0 sind sowohl Windows Form und WPF enthalten. Läuft also beides unter Linux. ;)

    Habs Dir als Zip in den Ordner gelegt. Haben denn die bisherigen Versionen auf der Maschine funktioniert? Hab am Setup eigentlich nix geändert...


    Ansonsten ist MS auf Servern ja restriktiver, es gibt doch Einstellungen, dass aus dem Internet runtergeladenen Programme oder nicht signierte Programme nicht ausgeführt werden. Kanns evtl. daran liegen?


    Gleich kommt aber auch noch ein Update mit ein paar Bugfixes...

    Nicht dass ich wüsste. Kann später auch nochmal ein Zip nur mit den Binaries zur Verfügung stellen...


    Ich bau das Setup mit dem Wix Toolset, eine sogar von MS entwickelte und propagierte Setup Methode. Unfassbar, dass das so rumzickt, kein .Net Core richtig unterstützt, keine grafische Integration ins Visual Studio...


    Die alte Setup Methode hat aber andere Nachteile und kann man gar nicht mit .Net Core zum Laufen bringen... .Net Core Brauch ich ja nun nicht mehr, aber es war halt schon fertig eingerichtet...

    Das neuste. 4.7.2 ist das glaub ich. Boah diese Wix Toolset da ist der Name echt Programm...

    Eben herausgefunden: Wenn die Internetverbindung plötzlich abbricht, dann beendet sich das Programm. Den Upload kann man aber wieder normal starten, er fängt dann nur wieder von vorne an. Es wäre schon cool, wenn ein Upload, der kurz zuvor abgebrochen wurde, an der Stelle wieder weitermacht. Das ist aber natürlich (wie bei meiner letzten Anmerkung) kein Muss, sondern nur eine Anregung ;) Ich glaub da wurde ich letztes mal falsch verstanden^^ Ich nutze das Programm sehr gerne, aber wenn mir etwas auffällt was ich angenehm fände, geb ich das einfach mal weiter. Was Drexel draus macht, ist dann wieder was anderes ;)

    Ja das Thema Verbindungsabbrüche und Resumable Uploads hab ich noch nie genau betrachtet, da ich noch nie einen Verbindungsabbruch hatte... Aber im Hinterkopf hatte ich es schon immer. Ich schaus mir für das nächste größere Update Mal an.

    In dem Zuge sind mir noch 2 Dinge aufgefallen:


    Wenn man das Template Bild ändert, wir es das Bild nicht in den VidUp Ordner kopiert. Fixe ich auch noch.

    Ebenso gleiche ich nochmal Variablennamen an, manchmal heißen Bilder intern Image und manchmal Picture, sowas macht mich wahnsinnig. ;) Das änder ich auch nochmal, kann sein, dass Ihr aufgrund der Änderungen nochmal ein paar Template Bilder neu zuordnen müsst.

    Eigentlich sollte ein Titel an der Stelle auch ausreichen, sobald man den eingibt wird ja auch der Accept Button aktiviert. An dem Bilder Management hat sich aber was geändert in der neuen Version, da hab ich wohl was übersehen, sollte aber einfach zu fixen sein, Update folgt denke ich heute Abend.


    Sorry für den schlechten Einstieg ins Tool. ;(

    Ach eine Anmerkung zur Drosselung noch:


    Gesendet wird in 10KByte Paketen, damit er aber nicht alle 10KByte auf die die Festplatte zugreifen muss, liest er immer 20MByte in den RAM. Das sollte bei HDDs vorteilhaft sein. Die Geschwindigkeit wird anhand des Uploads der letzten 3 Sekunden berechnet und angepasst, die angezeigte Uploadgeschwindigkeit basiert auf den letzten 20 Sekunden, damit die Zahl nicht ganz so starkt schwankt...

    Doch, auf meinem Rechner zu Hause gehts auch, auf dem Arbeitsrechner tat sich nix, obwohl der auch Win 10 hat. Naja wer weiß was da deaktiviert wurde. =)


    So jetzt aber zum wichtigen: :)


    Version 1.1.0.0 ist online: https://1drv.ms/u/s!AlNGd4g1Vh9rmHAvaCyZ5nvtOkDF?e=5vhucP

    !!!Ich empfehle in der alten Programmversion alle offenen Downloads zu beenden, die Programmversion zu deinstallieren und eine Kopie des Dokumente/VidUp Ordners zu machen!!!

    Das schon mal vorweg, damit es keiner überliest...


    Die Änderungen die ich vorgenommen sind die größten Code Änderungen die ich bisher gemacht habe. Neben den eigentlichen Änderungen musste ich das ganze Projekt von .NET Core auf .NET Framework umstellen, da sonst die Uploaddrosselung nicht funktioniert hat. Obwohl der Code an der Stelle exakt gleich ist verhält er sich im .NET Framework anders als in .NET Core. Ich hab ihn in .NET Core nicht dazu bekommen, die Daten sofort zu senden, es wurden immer erst die kompletten Daten in den RAM geschrieben und in einem Rutsch gesendet, was erstens beim Drosseln nicht hilft und zweitens bei mehren GB großen Dateien auch unangenehm werden kann.


    Um die Uploaddrosselung zu ermöglichen, musste ich einen eigenen Youtube Client schreiben, die Standard Library von Google habe ich rausgeschmissen. Danke an strohi für die Unterstützung! Der neue Client speichert das Authentifizierungstoken jetzt auch unter Dokumente\VidUp, deswegen ist eine erneute Authentifizierung beim ersten Upload erforderlich.


    Außerdem musste ich intern Variablen ändern,die sich auch aufs Speichern ausgewirkt haben (ich weiß gar nicht mehr genau was es war...), ich habe aber die Gelegenheit genutzt, Variablennamen zu vereinheitlichen, deswegen kann es sein, dass einige Daten der Templates und Uploads nicht mehr geladen werden, deswegen das Backup des Dokumente\VidUp Ordners, je nachdem wie umfangreich Eure Templates sind. Ihr könnt auch die uploads.json und templatelist.json anpassen, damit die Daten wieder geladen werden können, dafür müsst Ihr bei allen Attributen die mit "yt" anfangen das "yt" löschen. Also aus

    "ytTitle": " 💀 Let's Play Hollow Knight #29 💀 Deutsch/Gameplay/Facecam/Switch"

    wird z.B.

    "title": " 💀 Let's Play Hollow Knight #29 💀 Deutsch/Gameplay/Facecam/Switch"

    Das sollte noch bei Description und Visbility vorkommen.



    Das wars auch schon mit Update Hinweisen. :) Folgendes hat sich geändert:


    Unter der Haube:

    • Das Programm wurde aufs .NET Framework umgestellt (vorher wars .NET Core)
    • Der Youtube Client von Google wurde rausgeschmissen und ein eigener implementiert, um die Uploaddrosselung zu ermöglichen.

    Neue Features:

    • Die Upload Geschwindigkeit kann jetzt gedrosselt werden (unten bei den ganzen Status Informationen).
    • Bei leerem Titel wird jetzt auch die Edit Box des Titels mit dem Dateinamen gefüllt. Der einzige Unterschied zwischen der Edit Box und dem blauen Balken oben ist nun, dass der Titel im blauen Balken nach 100 Zeichen abgeschnitten wird und somit weiterhin so angezeigt wird, wie er auf Yotube ankommt.
    • Man kann jetzt noch ein Defualt Thumbnail einstellen, das wird als letzte Alternative genommen, wenn kein individuelles Thumbnail gefunden wird.
    • Die Projektbilder und die Fallbackthumbnails werden in den Dokumente\VidUp Ordner kopiert. Die individuellen Thumbnails nicht, da ich da von kürzerer Relevanz ausgehe.
    • Der Upload Fortschritt wird jetzt auch visuell auf der Taskleiste angezeigt und läuft durch, wenn alle Uploads beendet sind. Wenn das Fenster nicht im Fokus ist, dann bis es den Fokus bekommt. Sonst für 5 Sekunden.
    • Tooltip Anzeigedauer auf 60 Sekunden verlängert.
    • Texte werden jetzt gespeichert, nachdem 0,5 Sekunden nicht getippt wurde und nicht erst, wenn das Control verlassen wird.
    • Im About und Donate Screen steht jetzt CLOSE statt ACCEPT auf den Buttons
    • Das Setup verweigert jetzt beim fehlenden .NET Framework definitiv die Installation.


    Ich erwarte noch den ein oder anderen Bug, da es wie gesagt viele Änderungen waren. Ich hoffe der neue Youtube Client macht keine Problem, aber ich habe schon Dateien mit über 30GB problemlos damit hochgeladen... Ich bin Euch dankbar für jedes Feedback!


    Noch was zur Versionsnummer: Ich habe sie auf 1.1 angehoben, die zweite Nummer wollte ich bei größeren neuen Features erhöhen (die dritte bei kleineren Features, die letzt bei Bugfixes), zumindest gefühlt nach der Zeit die ich reingesteckt habe wars ein großes Feature, auch wenn mans nicht so direkt sieht. Evtl. hätte ich das auch schon in der Version machen sollen, die die Uploads editierbar gemacht hat, aber da hatte ich größere Änderungen Sinn. Aber im Endeffekt sind Versionsnummern eh nur Schall und Rauch...


    Vor der nächsten Version muss ich glaub ich im Code ein bißchen aufräumen, das MainWindow entwickelt sich langsam zum Gottobjekt. =)

    Ich hab schon ein Todo für die nächste Version:

    Mir ist aufgefallen, dass man Werte, die man über Browse-Buttons einstellt (Datei- und Verzeichnisauswahlen) gar nicht löschen kann. Das sollte an der ein oder anderen Stelle aber möglich sein... Aber offensichtlich hats noch niemand vermisst...


    So viel Spaß! :)