Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
AppDater (ehemals K_Updater)
EvilMM
myCSharp.de - Member

Avatar #avatar-2859.jpg


Dabei seit:
Beiträge: 324
Herkunft: Karlsruhe

Themenstarter:

beantworten | zitieren | melden

@Zony: Ab dem nächsten Build wird die Datei im Ordner preBeta/AppDater erzeugt. Von welchem Changelog-Fenster genau sprichst du?

@Jelly: Das Property ist umgesetzt und kommt in den nächsten Build - denke heute Abend. Werde mir dann die Geschichte mit dem Benutzerwechsel nochmal genauer ansehen. Normaler sollten alle Dateien die gelöscht werden auch gesichert werden, dass geschieht allerdings in einem Temp-Ordner - vllt läuft da aber auch etwas schief. Den Rollback-Mechanismus muss ich sowieso nochmal überarbeiten.
private Nachricht | Beiträge des Benutzers
Jelly
myCSharp.de - Member



Dabei seit:
Beiträge: 1127
Herkunft: Burden (Luxemburg)

beantworten | zitieren | melden

Zitat von EvilMM
dass geschieht allerdings in einem Temp-Ordner - vllt läuft da aber auch etwas schief.
In welchem denn, dann kann ich das überprüfen!
private Nachricht | Beiträge des Benutzers
Zony
myCSharp.de - Member

Avatar #avatar-2875.gif


Dabei seit:
Beiträge: 81
Herkunft: NZ

beantworten | zitieren | melden

Hier mal ein Screenshot von dem was ich meine:
Attachments
private Nachricht | Beiträge des Benutzers
Jelly
myCSharp.de - Member



Dabei seit:
Beiträge: 1127
Herkunft: Burden (Luxemburg)

beantworten | zitieren | melden

Zitat von Jelly
Zitat von EvilMM
dass geschieht allerdings in einem Temp-Ordner - vllt läuft da aber auch etwas schief.
In welchem denn, dann kann ich das überprüfen!
Also wenn ich das richtig sehe, legst du die temporären Dateien hier ab:
C:\Documents and Settings\Tom\Local Settings\Temp\appdater\20090925_085153506
Wenn du jetzt deinen Benutzer impersonifizierst (z.B. auf den Benutzer Admin), kann es dann sein, dass versucht wird ins Temp Verzeichnis vom Benutzer Admin zu schreiben. Das schlägt dann aber definitiv fehl, wenn der Benutzer Admin sich noch nie auf dem System eingeloggt hat, da dann nämlich noch sein Benutzerprofil fehlt, und somit auch sein Temp Ordner an sich. Imho machst du da also was falsch, überhaupt diesen Ordner als Puffer heranzuziehen.

Noch eine Bemerkung zu dem ganzen Logging... Ich starte die Updateprüfung jeweils direkt nach dem Start des Programms. Dein ausgeprägtes Logging sorgt dann bei mir dafür, dass zumindest im %Temp%\AppDater Ordner ein neuer Unterordner mit dem aktuellen Datum erstellt wird (z.B. 20090925_085908266), in der dann zumindest die updates.xml Datei landet. Das passiert auch, wenn überhaupt kein Update erfolgt weil der Client schon die aktuellste Version hat. Unschön an dem Ganzen ist einfach, dass nach jedem Programmstart immer wieder ein neuer Ordner angelegt wird, und so kommt es dass ich jetzt alleine schon durch mein Testen 180 Ordner dort liegen habe. Un weil ich so ausgiebig getestet habe, habe ich natürlich auch einie Updates erwzungen, und alle diese Updatedaten legst du dann auch unwiderruflich in diesem Temp Ordner ab, und das sowohl als Original Zip Datei, die Backup Dateien und die entpackten Dateien aus dem Zip Archiv. Dadurch ist mein %Temp%\AppDater Ordner mittlerweilen auf 600MB angeschwollen. Völliger Verschwendung würd ich meinen. Wenn ich mir vorstelle, dass ich eine Anwendung hier im Haus auf 400 PCs laufen habe, die über 2 Jahre hinweg jeden Tag (sogar wenn auch nur ein einziges mal) auf jedem PC gestartet wird, dann legt der AppDater insgesamt 400*2*365 Ordner an. Das sind fast 150.000 Ordner, die wir schön fleissig jeden Tag zentral backupen.

Ich denke, deine Logging Sache sollte nochmals gründlich überdacht werden, gerade auch in Bezug auf das Impersonifikationsproblem.

Nimm meine Kritik bitte nicht persönlich. Ich liebe das Projekt nach wie vor. Nur sollten diese Dinge unbedingt behoben werden bevor damit produktiv gearbeitet werden kann. Das wollte ich hier klarstellen mit meinem Post, nicht dass plötzlich irgendwelche Benutzer böse Erfahrungen mit AppDater machen müssen.
private Nachricht | Beiträge des Benutzers
Jelly
myCSharp.de - Member



Dabei seit:
Beiträge: 1127
Herkunft: Burden (Luxemburg)

beantworten | zitieren | melden

Zitat von Jelly
Zitat von EvilMM
dass geschieht allerdings in einem Temp-Ordner - vllt läuft da aber auch etwas schief.
In welchem denn, dann kann ich das überprüfen!
Also wenn ich das richtig sehe, legst du die temporären Dateien hier ab:
C:\Documents and Settings\Tom\Local Settings\Temp\appdater\20090925_085153506
Wenn du jetzt deinen Benutzer impersonifizierst (z.B. auf den Benutzer Admin), kann es dann sein, dass versucht wird ins Temp Verzeichnis vom Benutzer Admin zu schreiben. Das schlägt dann aber definitiv fehl, wenn der Benutzer Admin sich noch nie auf dem System eingeloggt hat, da dann nämlich noch sein Benutzerprofil fehlt, und somit auch sein Temp Ordner an sich. Imho machst du da also was falsch, überhaupt diesen Ordner als Puffer heranzuziehen.

Noch eine Bemerkung zu dem ganzen Logging... Ich starte die Updateprüfung jeweils direkt nach dem Start des Programms. Dein ausgeprägtes Logging sorgt dann bei mir dafür, dass zumindest im %Temp%\AppDater Ordner ein neuer Unterordner mit dem aktuellen Datum erstellt wird (z.B. 20090925_085908266), in der dann zumindest die updates.xml Datei landet. Das passiert auch, wenn überhaupt kein Update erfolgt weil der Client schon die aktuellste Version hat. Unschön an dem Ganzen ist einfach, dass nach jedem Programmstart immer wieder ein neuer Ordner angelegt wird, und so kommt es dass ich jetzt alleine schon durch mein Testen 180 Ordner dort liegen habe. Un weil ich so ausgiebig getestet habe, habe ich natürlich auch einie Updates erwzungen, und alle diese Updatedaten legst du dann auch unwiderruflich in diesem Temp Ordner ab, und das sowohl als Original Zip Datei, die Backup Dateien und die entpackten Dateien aus dem Zip Archiv. Dadurch ist mein %Temp%\AppDater Ordner mittlerweilen auf 600MB angeschwollen. Völliger Verschwendung würd ich meinen. Wenn ich mir vorstelle, dass ich eine Anwendung hier im Haus auf 400 PCs laufen habe, die über 2 Jahre hinweg jeden Tag (sogar wenn auch nur ein einziges mal) auf jedem PC gestartet wird, dann legt der AppDater insgesamt 400*2*365 Ordner an. Das sind fast 150.000 Ordner, die wir schön fleissig jeden Tag zentral backupen.

Ich denke, deine Logging Sache sollte nochmals gründlich überdacht werden, gerade auch in Bezug auf das Impersonifikationsproblem.

Nimm meine Kritik bitte nicht persönlich. Ich liebe das Projekt nach wie vor. Nur sollten diese Dinge unbedingt behoben werden bevor damit produktiv gearbeitet werden kann. Das wollte ich hier klarstellen mit meinem Post, nicht dass plötzlich irgendwelche Benutzer böse Erfahrungen mit AppDater machen müssen.
private Nachricht | Beiträge des Benutzers
EvilMM
myCSharp.de - Member

Avatar #avatar-2859.jpg


Dabei seit:
Beiträge: 324
Herkunft: Karlsruhe

Themenstarter:

beantworten | zitieren | melden

Für jeden Updatevorgang wird tatsächlich ein neuer Temp-Ordner angelegt.
Es steht zwar schon länger auf meiner Roadmap die Beschreibbarkeit zu prüfen - wurde aber nie wirklich akut wichtig. Jetzt wäre ein guter Anlass dass alles nochmals zu überdenken. Im Grunde lasse ich mir jede Temp-Datei vom System selbst anfordern Path.GetTemp (oder so ähnlich). Aber an dieser Stelle läuft das noch ziemlich altertümlich und händisch ab - werde ich mir direkt anschauen.

Zur Impersonifikation habe ich gestern Abend noch eine Einstellmöglichkeit ergänzt die es ermöglicht ein Update schon von vornherein unter dem gewünschten Benutzer durchzuführen - das aber nur nebenbei.

Deine Kritik nehme ich ganz und gar nicht persönlich sondern als das was es ist: Konstruktive Kritik. Da du selbst in dieser Branche tätig bist weißt du selbst vermutlich nur zu gut dass es Szenarien gibt an die man gar nicht denkt - somit bin ich unheimlich auf konstruktives Feedback angewiesen - an dieser Stelle also ein Dankeschön dafür :-)

Für mich würde das also bedeuten auch diese Tempordner vom System anfordern zu lassen - ggf. werde ich auch die Pfade ändern und es so machen wie es Microsoft selbst macht: C:\$blabla verwenden und anschließend wieder sauber weglöschen - da recherchiere ich mal ein wenig was der Königsweg ist und ob Microsoft was im Styleguide zu solchen Problemen stehen hat.

Ich lese mich zudem auch gerade ins ShadowCopying ein um echtes Updaten im Hintergrund zu ermöglichen. Ich denke das wäre ein durchaus interessantes Feature wenn das System bzw. die Applikation im Betrieb geupdated werden können und beim nächsten Rechnerstart dann die neuen Versionen zur Verfügung stehen.
private Nachricht | Beiträge des Benutzers
Zony
myCSharp.de - Member

Avatar #avatar-2875.gif


Dabei seit:
Beiträge: 81
Herkunft: NZ

beantworten | zitieren | melden

Hallo,

ich dachte mir zur abwechslung schreib ich noch mal was :D

Ich hab aktuell folgendes Problem:
Meine Anwendung hat die Version 1.1.0.0 und das einzige im AppDater eingetragene Update trägt auch die Version 1.1.0.0. Allerdings wird mir jedes mal ein Update gemeldet.

Eventuell kannst du dir das ja mal ansehen wenn du Zeit hast. Vielleicht sitzt der Fehler ja auch hier vor dem Bildschirm ;) Ich hab das Update Log usw. hier. Könnte ich dir per Mail zukommen lassen.

Gruß
private Nachricht | Beiträge des Benutzers
EvilMM
myCSharp.de - Member

Avatar #avatar-2859.jpg


Dabei seit:
Beiträge: 324
Herkunft: Karlsruhe

Themenstarter:

beantworten | zitieren | melden

Schick mir sowas ruhig zu: [email protected]
private Nachricht | Beiträge des Benutzers
EvilMM
myCSharp.de - Member

Avatar #avatar-2859.jpg


Dabei seit:
Beiträge: 324
Herkunft: Karlsruhe

Themenstarter:

beantworten | zitieren | melden

@Jelly: Habe nun das ganze WE mit Überlegungen und Recherchen verbracht und denke eine geeignete Lösung gefunden zu haben die ich auch schon weitestgehend umgesetzt habe.

Das AppDater-Objekt hat nun ein neues Flag "TempDirLocation" dessen 3 mögliche Werte die folgenden sind:

1. LoggedOnUserTemp: Das Temp-Verzeichnis des angemeldeten Benutzers wird zum Download der Dateien verwendet (Vorgehensweise wie bisher, diese Einstellung wird auch Standard sein)
2. DriveC: Ein Verzeichnis der Form C:\$_936DA01F-9ABD-4d9d-80C7-02AF85C822A8 wird verwendet. Dabei ist dann sichergestellt dass beim Ausführen eines Updates unter einem anderen Benutzer auch tatsächlich ins Temp-Verzeichnis geschrieben werden kann
3. UserSpecified: Verwende ein benutzerdefiniertes Verzeichnis

Das Problem dass du beschrieben hast, dass der Benutzer unter dem das Update durchgeführt werden kann nicht ins Verzeichnis des Benutzers schreiben kann der das Update veranlasst hat konnte ich nachstellen und durch Variante "DriveC" lösen.
An dieser Stelle wäre auch denkbar sich direkt in der DLL noch vor dem Aufruf der updater.exe per Impersonation am Konto des Benutzers anzumelden der das Update durchführen soll und in dessen Temp-Ordner zu schreiben. Eventuell füge ich diese Funktion dann später noch hinzu.

Auch habe ich nun die Einstellmöglichkeiten unter "Rechte" geändert. Bisher war es ja nur möglich entweder Adminrechte zu fordern oder ein anderes Benutzerkonto zu verwenden. Allerdings ist das ja quatsch. Denn das eine schließt das andere ja nicht aus. Somit stehen nun 4 Szenarien zur Verfügung unter denen ein Update durchgeführt wird

1. Angemeldeter Benutzer, keine Adminrechte
2. Angemeldeter Benutzer, Adminrechte
3. Anderes Benutzerkonto, keine Adminrechte
4. Anderes Benutzerkonto, Adminrechte

Die ersten Tests liefen eben erfolgreich. Nun schreibe ich noch die Routine die die Tempordner auch wieder löscht und dann gibts den nächsten Build.

Ein Szenario bereitet noch Probleme bei benötigten Adminrechten: Sollte ein Update unter dem angemeldeten Benutzer durchgeführt werden und auf Fehler auflaufen und will man dann während dem Update "händisch" das Benutzerkonto wechseln, so können noch keine Adminrechte angefordert werden.

@Zony: Deine Datei habe ich erhalten - vielen Dank. Jedoch kam ich heute noch nicht dazu das Problem zu lösen. Tatsächich erkennt die Routine die beiden identischen Versionsnummern und wählt dann dennoch das Update aus - also hat sih da irgendwo ein Fehler eingeschlichen.

Update: Habe gestern noch ne Weile dran gesessen und das Löschen der Temp-Dateien korrigiert. Nach einem Update werden sämtliche temporäre die angelegt wurden wieder gelöscht. Ein weiteres neues Flag "DeleteTempFilesAfterUpdate" dass standardmäßig auf "true" steht ermöglicht zu Debugzwecken das Löschen zu deaktiveren.
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von EvilMM am .
private Nachricht | Beiträge des Benutzers
Jelly
myCSharp.de - Member



Dabei seit:
Beiträge: 1127
Herkunft: Burden (Luxemburg)

beantworten | zitieren | melden

Also erstmal Klasse dass du dir die Zeit genommen hast, um das Gesagt umzusetzen.
Zitat von EvilMM
3. UserSpecified: Verwende ein benutzerdefiniertes Verzeichnis
Da spricht ja dann auch nix dagegen, ein Netzpfad als temporäres Verzeichnis zu verwenden, oder? Denn erneut ist es schwer generell für jeden PC ein Verzeichnis zu nennen, in das jeder Benutzer schreiben kann. Das ist PC spezifisch, und somit schwer handlebar. In einer AD Umgebung jedoch kann ich mir temporäre Verzeichnisse selbst definieren, und da gibt es keine Probleme mehr mit Schreibrechten.

Frage noch hierzu: Wenn ich ein Tempverzeichnis à la \\server\$_936DA01F-9ABD-4d9d-80C7-02AF85C822A8 angebe (die Guid würde ich selbst erstellen wollen), wird nach dem Update diese Verzeichnis wieder gelöscht oder nicht? Wenn nicht, dann sammelt sich im Laufe der Zeit dort eine Menge an.

Zitat von EvilMM
An dieser Stelle wäre auch denkbar sich direkt in der DLL noch vor dem Aufruf der updater.exe per Impersonation am Konto des Benutzers anzumelden der das Update durchführen soll und in dessen Temp-Ordner zu schreiben. Eventuell füge ich diese Funktion dann später noch hinzu.
Das wird meines Erachten schief gehen. Wenn sich der impersonifizierte Benutzer noch nie an dem Rechner eingeloggt hat, so steht ihm auch kein Profil unter c:\Dokumente und Einstellungen\ImpUser zur Verfügung, und er besitzt somit auch kein eigenes Temp Verzeichnis. Diese Option würde ich komplett ausser Acht lassen und gar nicht erst anbieten.
Zitat von EvilMM
Auch habe ich nun die Einstellmöglichkeiten unter "Rechte" geändert. Bisher war es ja nur möglich entweder Adminrechte zu fordern oder ein anderes Benutzerkonto zu verwenden. Allerdings ist das ja quatsch. Denn das eine schließt das andere ja nicht aus. Somit stehen nun 4 Szenarien zur Verfügung unter denen ein Update durchgeführt wird

1. Angemeldeter Benutzer, keine Adminrechte
2. Angemeldeter Benutzer, Adminrechte
3. Anderes Benutzerkonto, keine Adminrechte
4. Anderes Benutzerkonto, Adminrechte
Das ist Klasse, wenn man ein Adminkonto erzwingen kann, und das in jedem Fall und nicht nur wenn was schief läuft wegen mangelnder Rechte.

Ich würde versuchen, die Einstellmöglichkeiten nicht durch zuviele Optionen zu erschlagen. Ich würds so sehen, dass eigentlich ein Flag Admin ja/nein reicht, und wenn ja, dann können noch die Authentifizierungsdaten eines Admins angegeben werden, oder leer gelassen werden, dann eben beim Update nachfragen. Aber das ist nur meine bescheidene Meinung als Anwender :-)
private Nachricht | Beiträge des Benutzers
EvilMM
myCSharp.de - Member

Avatar #avatar-2859.jpg


Dabei seit:
Beiträge: 324
Herkunft: Karlsruhe

Themenstarter:

beantworten | zitieren | melden

Gegen einen Netzwerkpfad würde nichts sprechen, werde das aber erst testen müssen.

Ja die Problematik mit dem fehlenden Benutzerkonto hattest du angesprochen. Ich denke mit den drei Möglichkeiten die ich dann biete sollte sich jedes Problem lösen lassen und somit auch genug sein.

Die Logik beim Löschen ist folgende:
Es werden alle Dateien gelöscht die beim Updatevorgang angelegt wurden. Ist nach dem Löschen der Ordner leer (was normalerweise der Fall ist), wird der komplette Ordner gelöscht - aber auch nur dann. Damit wirke ich einer eventuellen Fehleinstellung entgegen. Man nehme mal an der Entwickler gibt als Benutzer-Temp-Pfad ausversehen C:\Windows an oder einen Ordner in dem sich noch wichtige andere Dateien befinden. Dann würde der Ordner bestehen bleiben.

Läuft jedoch alles Reibungslos wird der Ordner wieder komplett gelöscht.

Ein Problem sehe ich allerdings dann wenn du bei 400PCs immer den Ordner \server\$_936DA01F-9ABD-4d9d-80C7-02AF85C822A8 verwendest. Würden nun zwei PCs gleichzeitig ein Update durchführen würde ja vllt der eine Prozess dem anderen die Ordner weglöschen. Vllt könnte man hierbei überlegen ob das Temp-Verzeichnis als Wunsch nur als übergeordneter Ordner angesehen wird und darin dann das eigentliche Temp-Verzeichnis angelegt wird dass dann wieder gelöscht werden kann. Somit würde der Ordner zwar immer bestehen bleiben, wäre aber im Idealfall immer leer. Allerdings wäre das schon wieder eine Einstellung.
private Nachricht | Beiträge des Benutzers
Jelly
myCSharp.de - Member



Dabei seit:
Beiträge: 1127
Herkunft: Burden (Luxemburg)

beantworten | zitieren | melden

Zitat von EvilMM
Die Logik beim Löschen ist folgende:
Es werden alle Dateien gelöscht die beim Updatevorgang angelegt wurden. Ist nach dem Löschen der Ordner leer (was normalerweise der Fall ist), wird der komplette Ordner gelöscht - aber auch nur dann.
Das ist gut ;-)
Zitat von EvilMM
Ein Problem sehe ich allerdings dann wenn du bei 400PCs immer den Ordner \server\$_936DA01F-9ABD-4d9d-80C7-02AF85C822A8 verwendest. Würden nun zwei PCs gleichzeitig ein Update durchführen würde ja vllt der eine Prozess dem anderen die Ordner weglöschen.
Ich hab da vielleicht was falsch verstanden, aber ich gehe davon aus, dass ICH in der AppDater Klasse diesen Pfad selbst mit übergebe. Wenn dem so ist, würde ich natürlich somit für jeden Client seinen eigene guid-Pfad verpassen. Gearbeitet wird dann also nur in dem Pfad.
Oder dachtest du an die Möglichkeit, diesen Pfad in deiner AppDate Gui irgendwo fest anzugeben. Dann hast du natürlich Recht und ein Update könnte kritisch werden.
private Nachricht | Beiträge des Benutzers
EvilMM
myCSharp.de - Member

Avatar #avatar-2859.jpg


Dabei seit:
Beiträge: 324
Herkunft: Karlsruhe

Themenstarter:

beantworten | zitieren | melden

Also den Pfad gibst du nicht in der Gui sondern schon in der Applikation selbst an - so wie du es richtig verstanden hast.

Ich dachte jetzt nur gerade dass der Temp-Pfad dann ja eventuell immer identisch ist. Wenn du jedoch immer eine neue Guid erzeugst ist dieser Pfad bei jedem Updatevorgang unterschiedlich und macht dann auch keine Probleme.
private Nachricht | Beiträge des Benutzers
Fabian E.
myCSharp.de - Member



Dabei seit:
Beiträge: 267

beantworten | zitieren | melden

Hallo,

ich weiß nicht ob der AppDater das schon kann, aber ich habe mir grade überlegt, dass es echt sinnvoll wäre, wenn er sich die Updates in irgendeiner Weise aus einem SVN-Verzeichnis ziehen könnte. Dann würde nämlich das lästige bereistellen von ftp-Platz für die Updates entfallen. Bzw. das Programm an sich könnte vielleicht im SVN nachsehen obs es aktuellere Versionen gibt.

Fabi
private Nachricht | Beiträge des Benutzers
Jelly
myCSharp.de - Member



Dabei seit:
Beiträge: 1127
Herkunft: Burden (Luxemburg)

beantworten | zitieren | melden

Ich kann zwar nicht für den Programmierer sprechen, aber SVN ist ein Quellcode Versionierungstool, und eigentlich dazu gedacht, komplette Updates einer Software darüber laufen zu lassen. Ausserdem braucht es dazu einen SVN Client, der auch nicht unbedingt als "vorausgesetzt" gesehen werden kann.
private Nachricht | Beiträge des Benutzers
Sun
myCSharp.de - Member



Dabei seit:
Beiträge: 24
Herkunft: München

beantworten | zitieren | melden

Zitat von Sun
Wie sieht denn der aktuelle Stand aus?

Anfang April meintest es lohnt sich zu warten. Mittlerweilen bin ich aber seit gut einem Monat mit meiner Version raus. Die derzeitige Version vom K_Updater funktioniert zwar einwandfrei aber die neue hätte doch ein paar nette Features mit drin ;)

Ebenso wäre es allein wegen der Statistik lohnenswert ein Update zu bringen.

Nicht das ich nerven will aber mit diesen Zeitfenstern wirst mit einer kommerziellen Version keinen Boden unter die Füsse bekommen :( und das Potenzial hätte der AppDater allemal.

Muss hier mal nachfragen da ich denke das ich nicht der einzige bin der heiß auf die neue Version ist ;)
private Nachricht | Beiträge des Benutzers
Zony
myCSharp.de - Member

Avatar #avatar-2875.gif


Dabei seit:
Beiträge: 81
Herkunft: NZ

beantworten | zitieren | melden

Hi Sun,

ich weiß nicht ob du schon mal den Rest des Threads gelesen hast. Aber die "neue" Version ist schon lange da ;)
private Nachricht | Beiträge des Benutzers
Sun
myCSharp.de - Member



Dabei seit:
Beiträge: 24
Herkunft: München

beantworten | zitieren | melden

Dir ist aber auch klar das es sich um eine Beta handelt die produktiv nicht eingesetzt werden sollte? Außerdem hat sie ja nun definitiv noch ein paar bereits bekannte Fehler.
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Sun am .
private Nachricht | Beiträge des Benutzers
EvilMM
myCSharp.de - Member

Avatar #avatar-2859.jpg


Dabei seit:
Beiträge: 324
Herkunft: Karlsruhe

Themenstarter:

beantworten | zitieren | melden

Ich möchte euch nur mal darüber informieren dass ich den AppDater nun endgültig einstellen werde.

Ich dachte ich würde die Motivation das Projekt weiterzuführen nochmals aufleben lassen - und kurzfristig ist das auch geglückt. Die Tatsache wieviel Zeit dieses Projekt schluckt macht es mir jedoch schlicht und ergreifend unmöglich weiterzuarbeiten.

Erschwerend kommt die Tatsache hinzu dass ich kein Interesse mehr daran habe täglich meine Zeit mit einem Projekt zu verbringen das mir selbst nichts mehr bringt (sei es "Erfahrung" oder einfach nur eine gewisse Anerkennung in Form einer kleinen Spende oder dergleichen die schon lange nicht mehr kam und überhaupt nur 2-3 Mal stattgefunden hat).

Ich werde meine Freizeit in Zukunft Projekten widmen die mir Spaß machen und von denen ich selbst auch noch einen Nutzen habe.

Grundsätzlich tut es mir selbst Leid da ich sehr stolz auf das Projekt bin. Wirklich motivieren konnten mich "Beschwerde E-Mails" wieso dies und das denn nicht funktionieren würde und "Anforderungs E-Mails" mit O-Ton: "Ich hätte da noch eine Aufgabe für dich" überhaupt nicht - ich denke das können einige hier verstehen. Immerhin bin ich nicht der Auftragsprogrammierer der für kein Geld alles macht...

Es gibt ja wie ich gesehen habe im Forum mittlerweile ein zweites Updateprojekt. Ich bin gespannt wie lange der Entwickler Motivation aufbringen kann den Benutzern die Wünsche von den Lippen abzulesen nur dass diese dann die Software kostenlos in den Firmen einsetzen können. Sprich: Die Benutzer verdienen Geld - der Entwickler keins. Verdrehte Welt...

Denen die diese Software noch weiter verwenden wünsche ich dass alles glatt läuft.
private Nachricht | Beiträge des Benutzers
der-schlingel
myCSharp.de - Member

Avatar #avatar-3239.jpg


Dabei seit:
Beiträge: 820
Herkunft: Österreich/Wien

beantworten | zitieren | melden

Lässt du das Projekt komplett sterben oder darf man den Code jetzt auch abändern?
As a man thinketh in his heart, so he is.
- Jun Fan
Es gibt nichts Gutes, außer man tut es.
- Erich Kästner
Krawutzi-Kaputzi
- Kasperl
private Nachricht | Beiträge des Benutzers
Florian Reischl
myCSharp.de - Experte

Avatar #avatar-2880.jpg


Dabei seit:
Beiträge: 1596
Herkunft: München

beantworten | zitieren | melden

Hallo EvilMM

Ich muss gestehen ich habe mir dein Programm jetzt nicht angeschaut, weil derzeit kein Bedarf, aber...
Zitat von EvilMM
... und "Anforderungs E-Mails" mit O-Ton: "Ich hätte da noch eine Aufgabe für dich" überhaupt nicht - ich denke das können einige hier verstehen. Immerhin bin ich nicht der Auftragsprogrammierer der für kein Geld alles macht...
Wenn jemand eine Anforderung hat kannst du doch den Aufwand schätzen und ein auf Stundensatz basierendes Angebot machen. ;-)

Grüße
Flo
Blog: Things about Software Architecture, .NET development and SQL Server
Twitter
Google+

Je mehr ich weiß, desto mehr weiß ich was ich noch nicht weiß.
private Nachricht | Beiträge des Benutzers
dennisspohr
myCSharp.de - Member

Avatar #avatar-2982.jpg


Dabei seit:
Beiträge: 487
Herkunft: Westerwald

beantworten | zitieren | melden

Hallo EvilMM,

ich kann deine Entscheidung gut verstehen. So ein Projekt zieht viel, viel Arbeit mit sich. Du kannst/musst keinen Support leisten.

Was machst du jetzt genau mit dem Projekt? Gibst du es an einen anderen Entwickler weiter oder stellst du es vielleicht OpenSource? Ich wäre schade die ganze Energie, die du fast 2 Jahre lang in das Projekt gesteckt hast, einfach "verpuffen" würde und mehr oder weniger umsonst gewesen wäre.

Grüße Dennis
private Nachricht | Beiträge des Benutzers
Jelly
myCSharp.de - Member



Dabei seit:
Beiträge: 1127
Herkunft: Burden (Luxemburg)

beantworten | zitieren | melden

Zitat von EvilMM
Denen die diese Software noch weiter verwenden wünsche ich dass alles glatt läuft.
Ich nutze diese Software intensivst, und habe auch keine Probleme damit. Es sind lediglich ein paar Punkte die nocht nicht implementiert sind.

Ich finde es schade, dass du die Zeit nicht mehr findest, das Dingen weiterzuentwickeln, kanns aber sehr gut nachvollziehen, da es mir bei zumindest einem Projekt auch so gegangen ist: Rema.

Von meinem Rema weiss ich, dass es noch weiter genutzt wird, auch wenn ich keine Updates mehr rausbringe. Ich denke, bei deinem AppDater wird es nicht anders sein. Das belibt dann sicherlich trotzdem eine positive Bestätigung für deine Arbeit.
private Nachricht | Beiträge des Benutzers
Bundy.NET
myCSharp.de - Member



Dabei seit:
Beiträge: 79
Herkunft: Elbental

beantworten | zitieren | melden

Zitat von der-schlingel
Lässt du das Projekt komplett sterben oder darf man den Code jetzt auch abändern?

Wie in schon in einem anderen Beitrag geschrieben, fand ich dein Projekt auch immer schon klasse. Deine Beweggründe kann ich ebenfalls nachvollziehen.
Trotzdem fände ich es sehr schade, wenn das Projekt einfach so sterben würde. Daher würd ich mich gern der Frage anschließen, ob du den Code jetzt freigibst. Ich selber würd mich gern dem Darstellungsproblem auf meinem Notebook annehmen. Vielleicht krieg ich da was hin.

Trotzalledem vielen Dank für die geleistete Arbeit und ich hoffe du gibst den Quellcode frei.
"Fehler sind das Tor zu neuen Entdeckungen"
private Nachricht | Beiträge des Benutzers
EvilMM
myCSharp.de - Member

Avatar #avatar-2859.jpg


Dabei seit:
Beiträge: 324
Herkunft: Karlsruhe

Themenstarter:

beantworten | zitieren | melden

Zunächst erst einmal vielen Dank an alle die das Projekt toll fanden - wenngleich es immernoch traurig finde dass ein Projekt dass man rege genutzt und "gemocht" wird so wenig unterstützt wird. Aber das ist ja ein anders Thema.

Zum Thema Quellcode freigeben:

1. Leider kollidiert das mit meiner Abneigung gegen OpenSource :-) Ich weiß nicht ob ihr das nachvollziehen könnt - ich habe das Projekt unter anderem wegen dieser "Im Internet ist alles kostenlos"-Mentalität eingestellt. Es ist niemand mehr bereit für Arbeit Geld auszugeben und das habe ich anhand diesen Projekt sehr deutlich zu spüren bekommen. Gebe ich nun noch die Sourcen frei so kommt es mir noch viel mehr wie ein "verschenken" meiner Arbeit vor. Aber das ist nur meine persönliche Haltung zu diesem Thema, dass ich eine Abneigung habe diese Jahrelange Arbeit einfach zu verschenken. Ich dachte dass diese Leistung die ich erbracht habe irgendwem wenigstens 5€ wert gewesen wären so dass ich mir für das Opfern meiner Freizeit mal Abends ein Bier leisten kann - war es aber nicht, also sehe ich auch nicht wirklich ein weshalb ich es dann gleich verschenken sollte. Ich habe das Programm hauptsächlich während meiner Ausbildungszeit entwickelt und gerade da hat mir vorn und hinten das Geld gefehlt. Ich habe wirklich gedacht durch solch einen Einsatz etwas schaffen kann dass mir hier und da einen Obulus einbringt - manch einer nutzt es ja sogar innerhalb von Firmen und verdient indirekt damit Geld). Immerhin habe ich für das Projekt mein USBSynC geopfert und hatte selbst überhaupt keinen Nutzen vom AppDater - maximal um den AppDater selbst durch dich Komponenten zu aktualisieren. Offenbar war ich doch etwas zu naiv :-)

2. Auch wenn ich die Sourcen freigeben wollte - so ginge das gar nicht. Wie ich schon mehrere Male auf die Anfragen nach OpenSource geschrieben habe, nutze ich diverse kommerzielle Komponenten. Unter anderem edtFTPnet/PRO und SmartInspect. Ihr könnte ja mal danach googeln und euch anschauen was die Teile kosten. Um nun den AppDater OpenSource zu machen, müssten auch diese Komponenten ersetzt werden. Und das Program wird ohne FTP-Anbindung nicht wirklich funktionieren :-)

Na ja nun - so siehts derzeit leider aus.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von EvilMM am .
private Nachricht | Beiträge des Benutzers
t2t
myCSharp.de - Member



Dabei seit:
Beiträge: 436
Herkunft: Hamburg

beantworten | zitieren | melden

Andere Möglichkeit: Verkaufe den Sourcecode doch an Interessierte.
private Nachricht | Beiträge des Benutzers
Jelly
myCSharp.de - Member



Dabei seit:
Beiträge: 1127
Herkunft: Burden (Luxemburg)

beantworten | zitieren | melden

Zitat von EvilMM
Es ist niemand mehr bereit für Arbeit Geld auszugeben und das habe ich anhand diesen Projekt sehr deutlich zu spüren bekommen. Gebe ich nun noch die Sourcen frei so kommt es mir noch viel mehr wie ein "verschenken" meiner Arbeit vor. Aber das ist nur meine persönliche Haltung zu diesem Thema, dass ich eine Abneigung habe diese Jahrelange Arbeit einfach zu verschenken. Ich dachte dass diese Leistung die ich erbracht habe irgendwem wenigstens 5€ wert gewesen wären so dass ich mir für das Opfern meiner Freizeit mal Abends ein Bier leisten kann
Das kann ich so nicht auf mir sitzen lassen, sorry.

Ich mag es vielleicht in einem der unzähligen Einträgen in diesem Thread übersehen haben, aber mir ist jedenfalls nicht bewusst aufgefallen, dass du in irgendeiner Form jemals nach einer finanziellen Entschädigung gefragt hättest. Und paschal zu behaupten, dass die Leute kein Geld mehr für Lizenzen ausgeben, stimmt sicherlich auch nicht. Aber wenn du etwas für frei rausgibst, und darüber hinaus indirekt hier im Forum verlangst, die Mitglieder sollten bitte die Software auf Herz und Nieren testen, damit sie nachher den Ansprüchen auch gerecht wird, dann finde ich es imho schon fast dreist, diesen Leuten, die ja schliesslich auch Zeit investiert haben, zu sagen, du würdest das Projekt einstellen, weil keiner dir was für deine Arbeit zahlt. Ich kann nur von mir reden, und von mir hast du zumindest mal die Idee der Impersonifizierung, und den Quellcode (also nicht bloss die DLL) hast du von mir auch gerkriegt und ja auch in die letzte Version mit eingebracht.

Ich hatte damit kein Problem, da es dem Projekt an sich allgemein zugute kam.
Zitat von EvilMM
manch einer nutzt es ja sogar innerhalb von Firmen und verdient indirekt damit Geld). Immerhin habe ich für das Projekt mein USBSynC geopfert und hatte selbst überhaupt keinen Nutzen vom AppDater
Hmm. Dann hast du imho was falsch gemacht: Entweder hättest du von Anfang das Programm als Shareware rausgeben können, oder aber keine kommerziellen Komponenten dafür einsetzen sollen. Jetzt aber zu lamentieren, dass du Geld in das Projekt reingesteckt hast, und nichts davon hast weil dir kein was für zurückzahlt, ist nicht das Problem der Anwender, sorry.

Versteh mich nicht falsch. Ich kann absolut nachvollziehen, dass du das Projekt aus Zeit- oder persönlichen Gründen nicht weiter pushen willst. Du hast deine Gründe genannt, und die akzeptier ich: Fehlen von Motivation, Suche nach anderen Projekten die dir mehr Spass machen usw. Dass manche in der Tat nur neue Funktionalitäten fordern, ohne eigenen Einsatz mitzubringen, darin kann ich dich schon verstehen. Aber bitte wälze darüber hinaus nicht ein Verschulden auf die Tester und Nutzer deiner Software ab. Das kann ich so nicht befürworten.
private Nachricht | Beiträge des Benutzers
EvilMM
myCSharp.de - Member

Avatar #avatar-2859.jpg


Dabei seit:
Beiträge: 324
Herkunft: Karlsruhe

Themenstarter:

beantworten | zitieren | melden

Da muss ich dir absolut recht geben. Ich habs nie wirklich gesagt und habe es wohl tatsächlich falsch angegangen - das war mein Fehler und in dem Fall dann auch nicht eurer bzw. deiner - immerhin habe ich die kommerzielle Nutzung innerhalb der Lizenzbestimmungen ausdrücklich erlaubt.

Deine Unterstützung beispielsweise hat mir sehr geholfen und da bin ich nach wie vor sehr dankbar.

Somit mache ich von der Seite her auch niemandem einen Vorwurf. Ich muss es wohl auch mehr auf die Zeit schieben nachdem ich angekündigt hatte dass ich das Projekt gerne kommerzialisieren möchte. Da kamen teilweis schon sehr unverschämte E-Mails und vermutlich war es auch dass das mir dann erst die Lust verdorben hat :-( Immerhin wurde mir mehrmals doch schon klar zugetragen dass zwar reges Interesse besteht das Programm zu nutzen aber nur noch wenn ich die alte Version fertig mache oder möglichst diese dann OpenSource mache und nur die neue Version unter dem Namen AppDater verkaufe.

Das kann ich aber tatsächlich nicht auf alle hier verallgemeinern und somit sollen sich auch nicht alle angesprochen fühlen.
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 52329
Herkunft: Berlin

beantworten | zitieren | melden

Hallo EvilMM,
Zitat
Ich muss es wohl auch mehr auf die Zeit schieben nachdem ich angekündigt hatte dass ich das Projekt gerne kommerzialisieren möchte.
da muss ich dir dann aber leider einen Vorwurf machen. Ich habe den Thread lange Zeit einfach laufen lassen und nur sehr am Rande verfolgt. Deshalb kommt dieser Vorwurf erst jetzt, wo ich es sehe und nicht schon als du die Kommerzialisierung angesprochen hast.

Das Forum Projekt ist nach der Forenbeschreibung zur "Vorstellung von eigenen Projekten zur freien Benutzung durch die Community". Und das war es ja zu Anfang auch. Du darfst aber einen Projekte-Thread nicht dazu verwenden, um Leute mit einer kostenlosen Benutzung zu ködern, um die am Ende dann auf die kommerzielle Version umzulenken (egal ob das von Anfang an so geplant ist oder sich erst später ergibt).

Verstehe mich nicht falsch. Ich begrüße ausdrücklich, dass du dich für die Community engagiert hast und ich habe auch nichts dagegen, wenn du mit deiner Arbeit Geld verdienen willst. Und ich kann bis zu einem gewissen Grad auch die Zwickmühle verstehen, wenn du ein Projekt als Community-Projekt beginnst und sich dann doch der Wunsch ergibt, damit etwas zu verdienen.

Aber ich sage es nochmal klar. Das Forum Projekte ist nur für Community-Projekt und darf nicht dazu genutzt werden, um eigene kommerzielle Interessen zu verfolgen.

Da das Projekt ohnehin eingestellt ist, schließe ich daher diesen Thread. Wenn es noch etwas zu sagen gibt, schickt mir eine PM. Um Beiträge von öffentlichem Interesse einzustellen, kann ich auch in Absprache den Thread kurzzeitig wieder öffnen.

herbivore
private Nachricht | Beiträge des Benutzers