Autor |
Beitrag |
galagher
      
Beiträge: 2556
Erhaltene Danke: 45
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Mo 31.10.05 22:12
Hallo!
Ich weis, es gab bereits mindestens eine Diskussion dazu, aber trotzdem stelle ich diese Frage:
Kann man unter Windows XP eine Anwendung im Anwendungsdaten-Ordner (C:\WINDOWS\Anwendungsdaten) installieren/speichern, und kann dieses dann dort seinerseits seine Datendateien wie INI's etc. speichern?
Ist vieleicht eine dumme Frage, aber ich habe keinerlei Erfahrung mit XP! Ich frage deshalb, weil viele meiner Delphi-Programe - leider - in "ihrem" Ordner speichern. Also dachte ich, nimmst du gleich den Anwendungsdaten-Ordner als Speicherort!
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
Roosevelt
      
Beiträge: 223
Win XP prof. SP2, Win XP Home SP2, Suse 9.2
Delphi 6 Personal, Delphi 2005
|
Verfasst: Mo 31.10.05 23:24
warum nicht???
probier es doch einfach mal aus...
_________________ Glaube niemals das was du weißt!!!
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 01.11.05 02:01
C:\Windows\Anwendungsdaten?  Ich kenne nur C:\Dokumente und Einstellungen\<Benutzername>\Anwendungsdaten.
Aber selbst, wenn es den Ordner gibt, dort gehören Anwendungen nicht hin.
|
|
galagher 
      
Beiträge: 2556
Erhaltene Danke: 45
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Di 01.11.05 18:16
Luckie hat folgendes geschrieben: | C:\Windows\Anwendungsdaten? Ich kenne nur C:\Dokumente und Einstellungen\<Benutzername>\Anwendungsdaten.
Aber selbst, wenn es den Ordner gibt, dort gehören Anwendungen nicht hin. |
Egal, dann heisst er eben bei WinXP C:\Dokumente und Einstellungen\<Benutzername>\Anwendungsdaten. Ja, genau genommen gehören sie dort nicht hin, aber das würde mir das Umprogrammieren ersparen,  da meine Programme wie gesagt alle ihre Daten in ihrem Installations-Ordner schreiben.
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
Neidhard von Reuental
      
Beiträge: 268
XP
BDS 2006 Prof
|
Verfasst: Di 01.11.05 18:30
dann programmier dein program doch einfach um.
lass dein prog abfragen wo der angemeldete user seine anwendungsdaten speichert und speicher dann dahin.
|
|
galagher 
      
Beiträge: 2556
Erhaltene Danke: 45
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Di 01.11.05 19:11
Neidhard von Reuental hat folgendes geschrieben: | lass dein prog abfragen wo der angemeldete user seine anwendungsdaten speichert und speicher dann dahin. |
Es ist mir klar, das das die sauberste Lösung ist, aber zugleich auch die unbequemste. Mal sehen... Noch läuft ja alles unter WinMe, und noch ist nicht sicher, ob ich mir XP zulege oder nicht.
Danke!
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 01.11.05 19:20
|
|
galagher 
      
Beiträge: 2556
Erhaltene Danke: 45
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Di 01.11.05 20:13
Luckie hat folgendes geschrieben: | Und was machen die anderen Bneutzer des Programmes? Du gucken auch wiede rin die Röhre, weil sie logischerweise dort keine Schreibrechte haben. Oder soll sich jdeder Benutzer des Rechners dein programm seperat installieren?  |
Nein, das wäre ja Unsinn! Ich kann mir einfach nicht vorstellen, wie das funktionieren soll, da ich eben Xp nicht kenne.
Beispiel: Angenommen, ich habe ein Programm, in dem der Benutzer die Hintergrundfarbe des Programmfensters ändern kann. Also schreibt das Programm den Farbwert in eine .ini-Datei, die es in jenem Ordner speichert, den der Benutzer zuvor angegeben hat. Der Benutzer beendet das Programm. Und wie findet das Programm beim nächsten Start nun seine .ini-Datei wieder? Anders gefragt, wo - ausser in der Registry - speichert es den Pfad zu seiner .ini? Der Windows-Ordner fällt weg, der Programmordner ebenso, bleibt der Anwendungsdaten-Ordner, und wie soll es den finden, wenn der jedesmal - abhängig vom Benutzernamen - anders heisst?
Sorry, aber ich begreife da etwas nicht!
//Edit: Ok, es könnte den User-Namen abfragen und dann nach dem Ordner suchen. Aber geht's nicht einfacher? Ein einziger Ordner, in dem es schreiben darf?
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
Gausi
      
Beiträge: 8548
Erhaltene Danke: 477
Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
|
Verfasst: Di 01.11.05 20:28
Ich bin kein Experte für XP, aber ich greife Luckie einfach mal vorweg:
Unter XP kann man verschiedene User anlegen. Jeder User hat ein eigenes Startmenü, einen eigenen Desktop und einen eigenen Ordner "Eigene Dateien". Diese Ordner sind fest vorgegeben, so wie Luckie es geschrieben hat, oder sie sind in der Registry gespeichert ("Eigene Dateien" kann man z.B. beliebig verändern...). Windows "weiss" also, wo sich diese Ordner befinden, also kann das auch Delphi herausfinden
Der User gibt den Ordner nicht selber an, das musst du schon machen. Aber diesen Ordner kann man relativ zum Benutzer angeben, indem man den ersten Teil z.B. aus der Registry ausliest und dann einen Pfad zu "deinen Inis" anhängt, z.B. "GalgahersProductions\prog1.ini")
Edit: zu dem Edit: Das ist nicht ohne weiteres möglich, da unter NTFS jeder User nicht unbedingt überall schreiben darf. Möglich schon, aber mindestens genauso aufwendig zu realisieren.
_________________ We are, we were and will not be.
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 01.11.05 20:32
bevor es hier zu einer frickel Lösung kommt:
www.luckie-online.de...rtikel/HOMEDIR.shtml
|
|
galagher 
      
Beiträge: 2556
Erhaltene Danke: 45
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Di 01.11.05 20:42
Gausi hat folgendes geschrieben: | Aber diesen Ordner kann man relativ zum Benutzer angeben, indem man den ersten Teil z.B. aus der Registry ausliest |
Genau das möchte ich nicht - in die Registry schreiben. Nicht jedes Programm muss sein Zeug da hineinschreiben.
Gausi hat folgendes geschrieben: |
Edit: zu dem Edit: Das ist nicht ohne weiteres möglich, da unter NTFS jeder User nicht unbedingt überall schreiben darf. Möglich schon, aber mindestens genauso aufwendig zu realisieren. |
Also muss es einen "allgemeinen" Ordner für alle Programme geben? Wie machen das im allgemeinen die Programmierer, oder anders gefragt: Wie, ganz konkret, macht ihr das? Welchen Ordner nehmt ihr, wenn der User nicht einen Ordner seiner Wahl angeben soll/darf/kann? Wie sieht das mit
Delphi-Quelltext 1: 2:
| SHGetSpecialFolderLocation(Application.Handle, CSIDL_PERSONAL, pidl); SHGetSpecialFolderLocation(Application.Handle, CSIDL_APPDATA, pidl); |
aus?
//Edit: Luckie war schneller!
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 01.11.05 20:47
Du bist nicht meinem Link gefolgt, sonst würdest du jetzt nicht fragen.
|
|
galagher 
      
Beiträge: 2556
Erhaltene Danke: 45
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Di 01.11.05 21:01
Luckie hat folgendes geschrieben: | Du bist nicht meinem Link gefolgt, sonst würdest du jetzt nicht fragen. |
Doch, aber du hast gepostet, während ich noch geschrieben habe! Deshalb ja auch das Edit in meinem vorigen Beitrag! Habe deinen Link erst danach entdeckt!
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 01.11.05 21:39
Du brauchst 10 Minuten um so einen kurzen Beitrag zu verfassen? 
|
|
galagher 
      
Beiträge: 2556
Erhaltene Danke: 45
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Di 01.11.05 22:25
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|