| |
VB.NET - Ein- und UmsteigerMySettings übernehmen | | | Autor: Tommi467 | Datum: 01.09.15 08:15 |
| Hallo zusammen,
ich habe da ein kleines Problem und benötige Hilfe.
Vorab, ich weiß das es nicht elegant ist, aber der Kunde besteht darauf.
Ich habe also ein Programm, dass regelmäßig abgedated wird.
Allerdings besteht der Kunde darauf, dass die Exe immer die
Versionskennzeichnung enthält. Also z.B. xxx_V13.exe xxx_V14.exe xxx_V15.exe
Das Problem daran ist, das mit jeder Umstellung die Software natürlich
die Settings aus MySettings verliert, weil diese ja unter dem EXE Namen
in der Registry abgelegt werden.
Meine Frage ist deshalb, wie ich vielleicht die Setting der Vorgängerversion
übernehmen kann um nicht jedes mal die Software neu einzurichten.
| |
Re: MySettings übernehmen | | | Autor: DotNetErbse | Datum: 01.09.15 12:17 |
| mysettings.upgrade
Mit freundlichen Gr??en
DotNetErbse
[Es hei?t Paket und nicht Packet, auch wenn Standard augenscheinlich von Standar(t)e kommt,hei?t es dennoch Standar(d)] | |
Re: MySettings übernehmen | | | Autor: Tommi467 | Datum: 01.09.15 13:18 |
| Danke für den Tipp. Habe mir auch schon etwas hier im Forum und
anderswo im Internet angesehen. Glaube aber nicht, das mich das
weiter bringt.
Mein Problem ist doch, dass die Exe immer anders heißt.
Demzufolge werden die Settings auch in einem anderen Verzeichnis
abgelegt:
C:\Users\Fritzchen\AppData\Local\Firmenname\EXE.Datei\Version\user.config
Woher soll mysettings.upgrade wissen, wie die Version zuvor hieß und in welchem
Verzeichnis sie lag. Wenn es nur die Version wäre ok, das leuchtet ein...
aber so...
| |
Re: MySettings übernehmen | | | Autor: Manfred X | Datum: 01.09.15 16:13 |
| Hallo!
Du mußt selbst eine Update-Routine programmieren, d.h. die
Pfade ermitteln, die niedrigere Versionen enthalten und
die dortigen Settingsdateien in das aktuelle Versions-Verzeichnis
übertragen.
Einfacher wäre es, wenn Du beim Programmstart die Version anzeigst
oder dem Kunden erklärst, wie der die Versions-Nummer einer Exe
abfragen kann.
| |
Re: MySettings übernehmen | | | Autor: HenryV | Datum: 01.09.15 17:21 |
| Hallo
Du könntest eine Export/Import-Funktion implementieren.
https://www.google.com/search?q=export+import+my.settings+vb.net
Oder du machst deine Applikation "Portable"-fähig, indem du die Einstellungen im Programmordner speicherst.
z.B.
Du speicherst deine Einstellungen in eine XML bzw. INI-Datei.
http://www.xtremevbtalk.com/code-library/131671-saving-retrieving-application-settings.html
oder du verwendest einen Custom SettingsProvider
http://www.codeproject.com/Articles/20917/Creating-a-Custom-Settings-Provider
Gruss HenryV | |
Re: MySettings übernehmen | | | Autor: Tommi467 | Datum: 02.09.15 07:13 |
| [Quote]Du mußt selbst eine Update-Routine programmieren,....[/Quote]
Das habe ich in der Zwischenzeit auch versucht, mit mäßigem Erfolg.
Das der Überprüfung zum Programmstart und dem ggf. Kopieren der
Einstellungen funktionierte einwandfrei, aber die Aktualisierung der
geladenen Settings zur Laufzeit mochte er gar nicht. Ich bekam früher
oder später immer Fehlermeldungen.
[Quote]Einfacher wäre es, wenn Du beim Programmstart die Version anzeigst
oder dem Kunden erklärst, wie der die Versions-Nummer einer Exe
abfragen kann. [/Quote]
Das wäre schön... Nein, das will er alles nicht.
[Quote]Du könntest eine Export/Import-Funktion implementieren.[/Quote]
So eine Funktion, Einstellungen zu sichern und nachzuladen habe ich
sogar schon drin! Das Problem ist, das der User dann tätig werden
müßte. Das ist in diesem Fall nicht "zumutbar". Es soll automatisch
passieren.
[Quote]Oder du machst deine Applikation "Portable"-fähig, indem du die
Einstellungen im Programmordner speicherst. [/Quote]
Geht leider auch nicht, da Programm im Netzwerk liegt. Würden alle
User dort eine Konfig ablegen... dann Prost Mahlzeit
[Quote]oder du verwendest einen Custom SettingsProvider
http://www.codeproject.com/Articles/20917/Creating-a-Custom-Settings-Provider [/Quote]
Das kenne ich noch nicht, das werde ich mir jetzt mal als nächstes ansehen.
Parallel dazu habe ich gestern damit begonnen, die Versionsangabe im Source
komplett zu entfernen. Würde dann wirklich wie von Manfred vorgeschlagen
nur noch angezeigt. Ich könnte dann via mysettings.upgrade die Daten übernehmen.
Ich teste gerade aus, ob das auch dann funktioniert, wenn ich die generierte
EXE im nachhinein einfach umbenenne (Kundenwunsch). Im Source und in der
Verzeichnisstruktur steht ja nur der einfache Name ohne Versionsnennung.
Es könnte also klappen.
Melde mich, wenn ich es ausgetestet habe.
| |
Re: MySettings übernehmen | | | Autor: Manfred X | Datum: 02.09.15 12:20 |
| Hallo!
Normalerweise wollen Kunden einfach die neueste Version nutzen und deren
Nummer ist ihnen egal!
Wenn Dein Auftraggeber auf die Versionsnummer Wert legt, will er vermutlich
mehrere Versionen parallel nutzen ????
In dem Fall würde ich eine Datenbank erstellen, wo für jeden Nutzer und jede
Version eine Tabelle angelegt ist, die die Einstellungen enthält.
| |
Re: MySettings übernehmen | | | Autor: Tommi467 | Datum: 02.09.15 13:26 |
| Hi Manfred,
die Datenbank hatte ich unter VB6 drin, hatte sich aber auch nicht bewährt.
War zu starr, zu unflexibel...
Aber du bringst mich gerade auf eine Idee.
Ich könnte die Einstellungen in einer zentralen DB sichern und nur für den
Fall, das keine lokalen Einstellungen gefunden werden, diese aus dem Netz
laden. Das würde auch das Problem beheben, das ich nicht jedes mal für
einen Mitarbeiter konfigurieren muss, der sich zum ersten mal an einem
Rechner anmeldet...
Danke für den Tipp !
Ich werde das mal unabhängig von der Lösung aufgreifen | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevISDN 1.0
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats Neu! sevCoolbar 3.0
Professionelle Toolbars im modernen Design!
Mit sevCoolbar erstellen Sie in wenigen Minuten ansprechende und moderne Toolbars und passen diese optimal an das Layout Ihrer Anwendung an (inkl. große Symbolbibliothek) - für VB und MS-Access Weitere Infos
|