Autor Beitrag
mig76
Hält's aus hier
Beiträge: 15


2010
BeitragVerfasst: Mi 12.12.07 09:53 
Hab mich mal versucht durch das Forum zu suchen, aber bin leider nicht fündig geworden!

Bräuchte eine Anregung, wie ich es am einfachsten schaffen kann, mein immer wieder neu compiliertes Programm (exe-Anwendung) für die Anwender auf dem FileServer zu aktualisieren, ohne dass die Anwender, welche das Programm gerade geöffnet haben, durch Fehlermeldungen usw. zu viel gestört werden.

Momentan mach ich es so, dass ich alle geöffneten exe-Dateien "rausschmeisse", und dann die neu compilierte exe-Datei einfach überschreibe; viele Anwender die das Programm gerade geöffnet habn kriegn natürlich Schutzverletzung usw.

Wie macht ihr das eigentlich bei solchen Programmaktualisierungen? ich hab ungefähr 150-200 User, die über FileShare das programm aufrufen (also nicht auf jedem Client installiert) und ich kann die nicht alle telefonisch benachrichtigen, dass sie mal kurz aus dem Programm aussteigen sollten?!?!?!

Für jede Idee wäre ich sehr sehr dankbar
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6395
Erhaltene Danke: 149

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Mi 12.12.07 10:20 
Ich habe es bei mir so gelöst, dass ich ein Startprogramm habe, dass die Überprüfung macht. Das eigentliche Programm wird dann vom Server auf die lokale Festplatte kopiert, falls eine neuere Version vorliegt. Danach wird vom Startprogramm die lokale Version gestartet (-> ShellExecute) und das Startprogramm selbst automatisch beendet.
Amiga-Fan
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: Mi 12.12.07 10:28 
Und wie machst du das, wenn du kein Admin bist? Dann hast du ja keine Schreibrechte auf das Programme-Verzeichnis.

_________________
- Leg dich nie mit einem Berufsprogrammierer an
- Wahre Profis akzeptieren keine einfachen Lösungen
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10185
Erhaltene Danke: 1261

W11x64
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Mi 12.12.07 10:37 
Moin!

user profile iconAmiga-Fan hat folgendes geschrieben:
Und wie machst du das, wenn du kein Admin bist? Dann hast du ja keine Schreibrechte auf das Programme-Verzeichnis.
In diesem Fall drängt sich mir die Frage auf, ob es dann nicht jemand in deinem Netzwerk gibt, der gar nicht möchte, was du da machst... :gruebel: :|

Du könntest alternativ ein Beenden-Kommando vom Server aus an die Clients senden, oder ein Update-Kommando, dass über eine Batch-Datei einen Neustart macht. :nixweiss:

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6395
Erhaltene Danke: 149

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Mi 12.12.07 10:47 
user profile iconAmiga-Fan hat folgendes geschrieben:
Und wie machst du das, wenn du kein Admin bist? Dann hast du ja keine Schreibrechte auf das Programme-Verzeichnis.
Dann nimm halt ein Verzeichnis, wo der Anwender Schreibrechte hat. Es muss nicht zwangsläufig das Programmverzeichnis genutzt werden. Es genügt ja, wenn die Start-Anwendung dort steht.
alzaimar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2889
Erhaltene Danke: 13

W2000, XP
D6E, BDS2006A, DevExpress
BeitragVerfasst: Mi 12.12.07 10:49 
Das Problem mit den Schreibrechten kann auf auf sehr einfache Art lösen:

Man kopiert die aktualisierte Anwendung aus dem Netz in seine 'Eigene Dateien'. Da gehören sie schließlich hin, wenn man
a) übers Netz aktualisieren und
b) eben *nicht* die EXE aus dem Netz

starten will.

Natürlich ist das ein konzeptionelles Dilemma, in den 'Eigenen Dateien' Programme abzulegen und von dort aus zu starten (erlaubt das Vista überhaupt?), aber was soll man machen?

Alternativ (und bescheuert) wäre es, wenn jeder Anwender (aber nicht lachen) im Netz ein eigenes Verzeichnis hat, mit Schreibrechten. Dann wird die aktuelle Version eben dort herein geschrieben und auch von dort (also '<Netz>\Programme\lokal\<Benutzername>' oder so) gestartet.

Wichtig ist doch die Idee von jasocul, das man eine eigene Kopie erzeugt und die startet. So kann man einfach neue Version ins Netz stellen. Beim nächsten lokalen Programmstart wird dann automatisch die neueste Version gestartet, ohne das man einen Installationsaufwand hat.

_________________
Na denn, dann. Bis dann, denn.
Agawain
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 460

win xp
D5, MySQL, devxpress
BeitragVerfasst: Mi 12.12.07 11:05 
user profile iconalzaimar hat folgendes geschrieben:
Das Problem mit den Schreibrechten kann auf auf sehr einfache Art lösen:
Alternativ (und bescheuert) wäre es, wenn jeder Anwender (aber nicht lachen) im Netz ein eigenes Verzeichnis hat, mit Schreibrechten. Dann wird die aktuelle Version eben dort herein geschrieben und auch von dort (also '<Netz>\Programme\lokal\<Benutzername>' oder so) gestartet.


Das ist aber in Linux Standard, macht auch wegen Dasi Sinn. Bescheuert ist es natürlich, wenn man die EXE zig mal dort ablegt :wink: löst das Problem auch nicht.

Ich werde das bei meinem Programm so machen, daß es erst ein Vorprogramm gibt, daß nachschaut, ob es eine neuere Version gibt und die dann auf ein lokales Verzeichnis kopiert, zumal ich Leute im Netz hab, die via VPN damit arbeiten.

_________________
Gruß Aga
Amiga-Fan
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: Mi 12.12.07 11:14 
kann man das vielleicht so machen, das beim Installieren einer Anwendung, wofür man eh Admin-Rechte braucht, die vorgeschaltete Update-Applikation selbst Admin-Rechte bekommt?

Es wird ja generell dazu geraten, auch privat nur mit eingeschränkten Rechten zu arbeiten... in Vista ist das eh standard.

_________________
- Leg dich nie mit einem Berufsprogrammierer an
- Wahre Profis akzeptieren keine einfachen Lösungen
jasocul
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6395
Erhaltene Danke: 149

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Mi 12.12.07 11:32 
user profile iconAmiga-Fan hat folgendes geschrieben:
kann man das vielleicht so machen, das beim Installieren einer Anwendung, wofür man eh Admin-Rechte braucht, die vorgeschaltete Update-Applikation selbst Admin-Rechte bekommt?
Es geht nicht um die Installation eines Programms. Es geht "nur" um das Kopieren einer Datei.
Amiga-Fan
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: Mi 12.12.07 11:41 
Es geht doch um Programmaktualisierungen und wie man es machen kann... man könnte doch vor dem Programmstart ein Update-Programm vorschalten, das unabhängig vom aktuellen Benutzer immer Admin-Rechte hat (so wie ein Dienst)?!

_________________
- Leg dich nie mit einem Berufsprogrammierer an
- Wahre Profis akzeptieren keine einfachen Lösungen
mig76 Threadstarter
Hält's aus hier
Beiträge: 15


2010
BeitragVerfasst: Mi 12.12.07 12:05 
Danke Danke für die vielen Infos und Tipps!!! :D :D

Hab das ganze jetzt so gelöst, dass ich eben ein kleines Programm "vorschalte", welches aus einer ini-Datei ausliest, wo denn die aktuelle, "neue" Version meines "großen" Programmes liegt, und dann diese exe-Datei eben startet; ohne dass ich neue Programme lokal auf den Client kopiere usw.

Die neuen Programme liegen halt auch immer auf dem Fileshare, und werden halt dann durchnummeriert:
ProgVers1.exe, ProgVers2.exe, ProgVers3.exe

und irgendwann beginn ich eben dann wieder von neu.

So haben die User beim Start des "vorgeschalteten" Programms immer die aktuellste Version dann geöffnet, ohne irgendwas auf den Client zu kopieren. 8)
Amiga-Fan
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 534



BeitragVerfasst: Mi 12.12.07 12:18 
deine lösung ist natürlich nur fürs Intranet geeignet, aber wie macht ihr das bei automatischen Updates übers Internet?

_________________
- Leg dich nie mit einem Berufsprogrammierer an
- Wahre Profis akzeptieren keine einfachen Lösungen
mig76 Threadstarter
Hält's aus hier
Beiträge: 15


2010
BeitragVerfasst: Mi 12.12.07 12:23 
user profile iconAmiga-Fan hat folgendes geschrieben:
deine lösung ist natürlich nur fürs Intranet geeignet, aber wie macht ihr das bei automatischen Updates übers Internet?

ich kann mich im "glücklichen" Umstand schätzen, dass wir nur hausintern entwickeln, sprich wir haben momentan unsere Applikationen nur übers intranet freizugeben :oops: