Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi CSDIL_PROGRAM_FILES in 32Bit/64Bit (https://www.delphipraxis.net/170260-csdil_program_files-32bit-64bit.html)

QuickAndDirty 16. Sep 2012 20:33

AW: CSDIL_PROGRAM_FILES in 32Bit/64Bit
 
Zitat:

Zitat von himitsu (Beitrag 1182556)
Nur mal dem ganzen Verzeichnisstringvergleichen einhalt zu gebieten...

Dein Programm hat also Probleme, wenn es in einem Verzeichnis installiert ist, wo es keine Schreibrechte besitzt, weil es immernoch in seinem eigenem Programmverzeichnis rumschreibt?

Das ist nicht GANZ das Problem.
Das Problem ist eigentlich das es eine Freigabe benötigt.
Mit schreib und lese Rechten für Daten (Ich glaube das geht für die Spezialverzeichnisse nicht).
Selbst wenn das ginge ist die andere Sache das sich die Clients selbstständig über die Serverfreigabe updaten können. Das Update wird im Bedardsfall beim Start des Clients ausgelöst und das Programmverzeichnis dann kopiert.

Zitat:

Zitat von himitsu (Beitrag 1182556)
Dann wäre es besser, wenn du prüfst, ob es Schreibrechte besitzt und nicht einfach nur wahllos mit irgendwelchen Verzeichnisnamen vergleichst.

Ich versuche bei der Installation Fehler die unserem Support Aufwand erzeugen zu verhindern. Das ist Sinn und Zweck dieser Maßnahmen. Natürlich kann ich nicht jeden scheiß vorhersehen. Aber so das typische auswählen den Progamme Verzeichnis kann ich verhindern.
Desweiteren verhindere ich das Auswählen von Netzwerkpfaden oder Netzlaufwerken als Installationsort, da wir einen FB-Server mit ausliefern und der mag das auch nicht.
Und natürlich prüfe ich nicht nach Schreibrechten, da das Setup nur mit Administrator rechten ausgeführt werden kann, setze ich direkt Vollzugriffs-Rechte für "Jeder" und gebe den Ordner frei.

Zitat:

Zitat von himitsu (Beitrag 1182556)
Oder du machst es wie alle Programme und prüfst garnichst, sondern vertraust darauf, daß der Benutzer es ordentlich installiert. (und erwähnst es wenigstens spätestens im Setup)

Wir erwähnen so ziemlich alles im Setup...leider scheitern wir dennoch daran das der Admin oder "User dem das Admin Passwort bekannt ist" die Informationen die wir Vermitteln möchten auch aufnimmt.
Aber ich arbeite an einem Comic um das vermitteln der Handlungsanweisungen im Setup interessanter zu gestallten.
Zur Zeit scheint der Einzige nutzen von Erklärendem Text und Handlungsanweisungen im Setup darin zu bestehen, dafür zu sorgen das man einem Kunden der sich aufregt RTFM sagen kann...natürlich höflich verklausuliert. Das bleibt dann natürlich trotzdem beim Support hängen und der belästigt mich damit...

Zitat:

Zitat von himitsu (Beitrag 1182556)
Oder du reparierst dein Programm, so daß es endlich ordnungsgemäß arbeitet. (was man eigentlisch schon seit mindestens Win200 hätte machen sollen)

Wir sind dabei, aber ich brauchte eine schnelle Lösung.

Zitat:

Zitat von himitsu (Beitrag 1182556)
Tipp:
- Es gibt noch mehr Verzeichnisse, wo man nicht schreiben darf.

übelst...zum Glück gab es noch keine Installationen im System32 Ordner...und so einen kram.

Zitat:

Zitat von himitsu (Beitrag 1182556)
- Der Benutzer kann die Rechte ändern, wie er lustig ist.

Da ich die Rechte beim Installationsverlauf selbst setzte, hat das Setup alles erfüllt was es soll. Der Rückbau von Rechten liegt in der Verantwortung des Administrators.
Zitat:

Zitat von himitsu (Beitrag 1182556)
- Ist dir bekannt, daß man das selbe Verteichnis unterschiedlich ansprechen kann? (lange Namen, kurze 8.3-Name, UNC-Pfade, Hardlinks, Softlinks, Verzeichnis/Partition mehrfach gemountet, ...)

Ja das ist mir bekannt. Seltene Exoten landen im Support.

p80286 16. Sep 2012 21:33

AW: CSDIL_PROGRAM_FILES in 32Bit/64Bit
 
Zitat:

Zitat von QuickAndDirty (Beitrag 1183211)
Mit schreib und lese Rechten für Daten (Ich glaube das geht für die Spezialverzeichnisse nicht).

Zumindestens XP kann das noch.

Zitat:

Zitat von QuickAndDirty (Beitrag 1183211)
Selbst wenn das ginge ist die andere Sache das sich die Clients selbstständig über die Serverfreigabe updaten können. Das Update wird im Bedardsfall beim Start des Clients ausgelöst und das Programmverzeichnis dann kopiert.

Da frage ich mich, wofür ist das gut, es klingt als ob alle 3 Tage ein Update notwendig wäre

Zitat:

Zitat von QuickAndDirty (Beitrag 1183211)
Und natürlich prüfe ich nicht nach Schreibrechten, da das Setup nur mit Administrator rechten ausgeführt werden kann, setze ich direkt Vollzugriffs-Rechte für "Jeder" und gebe den Ordner frei.

Vollzugriff für "Jeder"? Damit macht man sich Freunde.
Aber wo ist dann das Problem?

Zitat:

Zitat von QuickAndDirty (Beitrag 1183211)
Wir erwähnen so ziemlich alles im Setup...leider scheitern wir dennoch daran das der Admin oder "User dem das Admin Passwort bekannt ist" die Informationen die wir Vermitteln möchten auch aufnimmt.
Aber ich arbeite an einem Comic um das vermitteln der Handlungsanweisungen im Setup interessanter zu gestallten.
Zur Zeit scheint der Einzige nutzen von Erklärendem Text und Handlungsanweisungen im Setup darin zu bestehen, dafür zu sorgen das man einem Kunden der sich aufregt RTFM sagen kann...natürlich höflich verklausuliert. Das bleibt dann natürlich trotzdem beim Support hängen und der belästigt mich damit...

Ich agiere manchmal auch als Admin, rate mal wie ich auf ein Comic als Installationsanweisung reagieren werde.

Und "so ziemlich alles" ist nicht alles.
Ich bevorzuge RTFM aber wenn das Handbuch/Installationsanweisung nicht vollständig ist...

Gruß
K-H

QuickAndDirty 18. Sep 2012 10:29

AW: CSDIL_PROGRAM_FILES in 32Bit/64Bit
 
Zitat:

Zitat von p80286 (Beitrag 1183215)
Zumindestens XP kann das noch.

Cool. Haben die ab Vista damit angefangen?

Zitat:

Zitat von p80286 (Beitrag 1183215)
Da frage ich mich, wofür ist das gut, es klingt als ob alle 3 Tage ein Update notwendig wäre

Es sorgt dafür das ein Update nur einmal auf dem Server eingespielt werden muss, die clients versorgen sich dann selbstständig mit Updates. Das spart Zeit und Kosten, vor allem in Unternehmen die von externen IT-lern abhängig sind. Und es macht das verkaufen eines Updates profitabler, denn es gibt kaum jemand der für das "einspielen" eines Updates bezahlt. In der Regel ist das verschenkter Support.
Aber wir müssen das Problem auf lange sicht sowieso lösen. Und von der dämlichen Freigabe wegkommen. Nur im Moment hängt da ne Menge dran und das sind viele große Aufgaben, nach deren Erledigung wir ein Produkt mit keinem einzigen Feature mehr oder Fehler weniger hätten.

Zitat:

Zitat von p80286 (Beitrag 1183215)
Vollzugriff für "Jeder"? Damit macht man sich Freunde.

Es kommt drauf an.
-Kleine Firmen ohne IT-Fachkraft ziehen daraus nur Vorteile, weil sie oft nicht wissen wie man eine Freigaben macht.
-Firmen mit Internen Adminsitrator sind meist größer und der hat dann Arbeit damit das "Jeder" passgenau anzupassen. Allerdings hat die Software dann funktioniert bevor er an den Rechten gebastelt hat und so erkennt er meist selbstständig das das was nicht geht in seinem Verantwortungsbereich passiert ist und bringt es in Ordnung.
-Firmen mit Externen Administrator sind meist von mittlerer Größe und auch dem machen wir damit die Arbeit das im Nachhinein passgenau zu ändern. Leider gibt es so Amateur externe die nach dem Fire und forget Prinzip arbeiten und natürlich nur Vorort. Wenn dann nach einer Aktion die Rechte weg sind, bekommen in der Regel wir den Anruf.

Zitat:

Zitat von p80286 (Beitrag 1183215)
Aber wo ist dann das Problem?

Das einzige Problem war das ich unter W64Bit die Installation in das Programme verzeichnis nicht verhindern kann.

Zitat:

Zitat von p80286 (Beitrag 1183215)
Ich agiere manchmal auch als Admin, rate mal wie ich auf ein Comic als Installationsanweisung reagieren werde.

Du würdest dich getrieben von der Identifizierung mit dem Hauptcharackter durch die gesammte Anleitung lesen. Und das ansprechen der visiospatialen, den episodischen als auch phonologisch-lingualen Hirnfunktionen würde zu einer leichteren Aufnahme der Information führen. Du würdest dich über diese an die Fähigkeiten des Gehirns angepassten Vermitlungsweise freuen und dich fragen warum nicht das gesammte Programm noch eine Gamifizierung erfahren hat. Wenn du am Ende der Anleitung angekommen wärst, würdest du in Heureka-Rufe ausbrechen und tanzend über den Büroflur wirbeln.

Korrekt antizipiert?

Zitat:

Zitat von p80286 (Beitrag 1183215)
Und "so ziemlich alles" ist nicht alles.

Ja wir fangen zum Teil bei Adam und Eva an. Die Installationsanleitung richtet sich durchaus an User.
Zitat:

Zitat von p80286 (Beitrag 1183215)
Ich bevorzuge RTFM

Meist helfen wir den Usern einfach.
Wir mögen es nur nicht wenn leute persönlich werden. Zum Glück sind die meisten Menschen in der Lage ihre Fragen auf zivilisierte Weise vorzubringen.

Zitat:

Zitat von p80286 (Beitrag 1183215)
aber wenn das Handbuch/Installationsanweisung nicht vollständig ist...

Ich denke nicht das unser Handbuch wirklich vollständig ist. Zumindest würde ich sowas niemals behaupten. Ich kenne allerdings kaum Handbücher die wirklich alle meine Fragen beantworten. Ehrlich gesagt halte ich es sogar für sehr wahrscheinlich das Vollständige Handbücher für Software nicht existieren(Trivialsoftware mal ausgenommen).
Was in der Anleitung wirklich fehlt sind Beispiel Szenarios. So nach Kochbuchmanier.
Noch besser als ein Handbuch wäre eigentlich ein Buch in Form eines Kurses. Haben wir aber nicht.

p80286 18. Sep 2012 10:58

AW: CSDIL_PROGRAM_FILES in 32Bit/64Bit
 
Zitat:

Zitat von QuickAndDirty (Beitrag 1183387)
Zitat:

Zitat von p80286 (Beitrag 1183215)
Zumindestens XP kann das noch.

Cool. Haben die ab Vista damit angefangen?

keine Ahnung, am Arbeistplatz hab ich noch XP.
Nein warte, ich hab da noch ein 32BitW7, muß mal schauen. Kann aber bis morgen dauern.

Zitat:

Zitat von QuickAndDirty (Beitrag 1183387)
Zitat:

Zitat von p80286 (Beitrag 1183215)
Ich agiere manchmal auch als Admin, rate mal wie ich auf ein Comic als Installationsanweisung reagieren werde.

Du würdest dich getrieben von der Identifizierung mit dem Hauptcharackter durch die gesammte Anleitung lesen. Und das ansprechen der visiospatialen, den episodischen als auch phonologisch-lingualen Hirnfunktionen würde zu einer leichteren Aufnahme der Information führen. Du würdest dich über diese an die Fähigkeiten des Gehirns angepassten Vermitlungsweise freuen und dich fragen warum nicht das gesammte Programm noch eine Gamifizierung erfahren hat. Wenn du am Ende der Anleitung angekommen wärst, würdest du in Heureka-Rufe ausbrechen und tanzend über den Büroflur wirbeln.

Korrekt antizipiert?

OK, wir verstehen uns!:lol::lol:

Gruß
K-H

Zacherl 18. Sep 2012 16:29

AW: CSDIL_PROGRAM_FILES in 32Bit/64Bit
 
Habe nicht alles durchgelesen, aber vielleicht hilft dir bei deiner Überprüfung im Hauptprogramm die MSDN-Library durchsuchenWow64DisableWow64FsRedirection API. Damit kannst du die WOW64 Redirection temporär für dein Programm deaktivieren.

musicman56 18. Sep 2012 18:01

AW: CSDIL_PROGRAM_FILES in 32Bit/64Bit
 
@QuickAndDirty

Vieles von dem was du schreibst kommt mir bekannt vor. Ein Grundproblem deiner Vorgehensweise beim Updaten von Clients über's Netzwerk liegt darin, dass die Clients Zugriffsrechte auf den Server brauchen. Ich hab das Problem vor etwa 10 Jahren schon gelöst, indem ich auf dem Server nach der Installation und nach jedem Internet-Update (das vom Server aus via FTP von meinem WEB-Server heruntergeladen wird) ALLE Programmdateien in eine Datenbank (in ein Blob-Feld) einlese, natürlich zusammen mit Datum und Größe in separaten Feldern. Der Client vergleicht dann einfach seine lokal vorhandenen Dateien mit denen in der Datenbank, und wenn eine älter ist, wird mit TBlobField.SaveToFile einfach die Datei aktualisiert. Mit jeder Haupversion ändere ich dann ein Datenfeld in der Datenbank-Struktur und damit verhindere ich dann sogar noch, dass sich Clients mit inkompatibler (älterer) Version im Netzwerk anmelden.

Einziger Nachteil: Ca. 150MB Speicherplatz für die Datenbank, aber ist das wirklich ein Nachteil?

p80286 18. Sep 2012 21:41

AW: CSDIL_PROGRAM_FILES in 32Bit/64Bit
 
Es sieht so aus, als dürften unter W7(Enterprise) auch Administratoren nicht an der Berechtigung von
C:\Programme drehen, das könnte allerdings auch an den Richtlinien liegen.

Da fehlen mir allerdings die notwendigen Infos.

Gruß
K-H

QuickAndDirty 22. Sep 2012 11:09

AW: CSDIL_PROGRAM_FILES in 32Bit/64Bit
 
Zitat:

Zitat von musicman56 (Beitrag 1183470)
@QuickAndDirty

Vieles von dem was du schreibst kommt mir bekannt vor. Ein Grundproblem deiner Vorgehensweise beim Updaten von Clients über's Netzwerk liegt darin, dass die Clients Zugriffsrechte auf den Server brauchen. Ich hab das Problem vor etwa 10 Jahren schon gelöst, indem ich auf dem Server nach der Installation und nach jedem Internet-Update (das vom Server aus via FTP von meinem WEB-Server heruntergeladen wird) ALLE Programmdateien in eine Datenbank (in ein Blob-Feld) einlese, natürlich zusammen mit Datum und Größe in separaten Feldern. Der Client vergleicht dann einfach seine lokal vorhandenen Dateien mit denen in der Datenbank, und wenn eine älter ist, wird mit TBlobField.SaveToFile einfach die Datei aktualisiert. Mit jeder Haupversion ändere ich dann ein Datenfeld in der Datenbank-Struktur und damit verhindere ich dann sogar noch, dass sich Clients mit inkompatibler (älterer) Version im Netzwerk anmelden.

Einziger Nachteil: Ca. 150MB Speicherplatz für die Datenbank, aber ist das wirklich ein Nachteil?

Wir machen das bereits so mit Ausnahme des DB teils.
Garantiert wird es niemals passieren das wir alle Unsere Update relevanten dateien in die DB laden.
Aber einen Update Server wird es geben. Nur eben nicht jetzt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:19 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz