AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

im Programmverzeichnis Datei ändern?

Ein Thema von zeras · begonnen am 1. Apr 2012 · letzter Beitrag vom 3. Apr 2012
Antwort Antwort
Seite 1 von 3  1 23      
zeras

Registriert seit: 11. Mär 2007
Ort: Saalkreis
1.618 Beiträge
 
Delphi 12 Athens
 
#1

im Programmverzeichnis Datei ändern?

  Alt 1. Apr 2012, 14:11
Delphi-Version: 2009
Hallo,

ich komme noch nicht klar mit den ganzen Restriktionen im Programmverzeichnis. Normalerweise werden ja die Anwendungsdaten in das Anwendungsverzeichnis geschrieben. Wie kann ich prüfen, ob ich doch Zugriff auf eine Datei im Programmordner habe? Mit FileGetAttr bekomme ich als Info, dass die Datei nicht schreibgeschützt ist. Ich habe aber trotzdem keinen Zugriff auf die Datei, da offensichtlich der Ordner ja schreibgeschützt ist. Müßte ich da den Ordner abfragen oder wie sollte ich vorgehen. Wenn ich mit FileGetAttr frage, kommt nur die Info, dass es sich um einen Ordner handelt.
Wie kann ich vorgehen?
Matthias
Es ist nie falsch das Richtige zu tun!
- Mark Twain
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: im Programmverzeichnis Datei ändern?

  Alt 1. Apr 2012, 14:17
Einfach davon ausgehen, dass es nicht geht und die Daten woanders ablegen!
Markus Kinzler
  Mit Zitat antworten Zitat
zeras

Registriert seit: 11. Mär 2007
Ort: Saalkreis
1.618 Beiträge
 
Delphi 12 Athens
 
#3

AW: im Programmverzeichnis Datei ändern?

  Alt 1. Apr 2012, 14:20
Einfach davon ausgehen, dass es nicht geht und die Daten woanders ablegen!
Ja gut, das wäre die beste Lösung. Aber es könnte doch auch andere Pfade geben, die schreibgeschützt sind und man auf die gleichen Probleme stößt?
Matthias
Es ist nie falsch das Richtige zu tun!
- Mark Twain
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: im Programmverzeichnis Datei ändern?

  Alt 1. Apr 2012, 14:24
Nicht wenn man die von Betriebssystem dafür vorgesehene Verzeichnisse verwendet.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#5

AW: im Programmverzeichnis Datei ändern?

  Alt 1. Apr 2012, 14:46
Oder man wirft, wenn man es wie die Designer des Betriebssytems, eigener Software, namentlich MSSQL-Server ermöglichen möchte, die Regeln zu brechen, einen Blick auf CACLS.
(sorry für Ketzertum)
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#6

AW: im Programmverzeichnis Datei ändern?

  Alt 1. Apr 2012, 14:59
@zeras

Also im Programmeverzeichniss hast du als normaler Nutzer (kein Administrator) Leserechte, aber keine Schreibrechte. Hier geht es um Rechte, nicht Schreibschutz. Äpfel und Birnen.

Wenn du also prüfen willst ob du eine Datei ändern kannst, dann zuerst den Schreibschutz überprüfen und dann ob du Änderungsrechte hast. Klingt kompliziert, ist es auch. Du kannst dir irgendwo eine Funktion suchen die Prüft ob du Adminrechte hast, aber auch das muß nichts bedeuten. Auch einem Admin kann man die Schreibrechte nehmen.

Deshalb den einfachen Weg. Es gibt Ordner wo du deine Daten schreiben kannst.

Nur mal interessehalber: was willst du ändern?
Miniaturansicht angehängter Grafiken
aenderungsrechte.png  
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.115 Beiträge
 
Delphi 12 Athens
 
#7

AW: im Programmverzeichnis Datei ändern?

  Alt 1. Apr 2012, 15:01
Hallo,

ich komme noch nicht klar mit den ganzen Restriktionen im Programmverzeichnis. Normalerweise werden ja die Anwendungsdaten in das Anwendungsverzeichnis geschrieben.
Normaler Weise?

Das ist schon seit Windows NT verboten.
Soviel zu Normal ... es ist also schon seit fast 13 Jahren verboten und wenn die Programmierer es immernoch nicht kapiert haben, dann sind sie selber Schuld.

Bis Windows XP hat es nur fast keiner gemerkt, weil nahezu alle nur mit Adminrechten unterwegs waren.
Was nicht sonderlich intelligent war, wie man an der Verbreitung von Schadsoftware gut erkennen kann.

Seit nun schon fast 6 Jahren hat Microfot dem endlich einen Riegel vorgeschoben und den automatisch erzeugten Standardbenutzer nicht mehr mit vollen Rechten ausgestattet.
Du hattest nun also schon 6 Jahre Zeit dich gezwungener Maßen daran zu gewöhnen.

Und auch schon vor WinNT gab es Standardverzeichnisse, für viele Daten, so daß man sich an diese Verzeichnisse noch viel länger dran gewöhnen konnte.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: im Programmverzeichnis Datei ändern?

  Alt 1. Apr 2012, 15:06
Zudem hat Microsoft zusammen mit der UAC auch die Verzeichnisvirtualisierung eingeführt, um nicht alle Programme der "Unverbesserlichen" nicht mit einem Schlag unbrauchbar zu machen.
Der Schuss ging imho nach hinten los, da es für die meisten immer noch keinen Grund gibt, ihre Vorgehensweise zu überdenken. Zudem ist das System nun unübersichtlich ( welche Version der Ini gilt nun?) Es wäre besser gewesen, die gelbe Karte zu zeigen.
Markus Kinzler
  Mit Zitat antworten Zitat
zeras

Registriert seit: 11. Mär 2007
Ort: Saalkreis
1.618 Beiträge
 
Delphi 12 Athens
 
#9

AW: im Programmverzeichnis Datei ändern?

  Alt 1. Apr 2012, 15:36

Nur mal interessehalber: was willst du ändern?
Ist nicht ganz einfach zu erklären. Es gibt bestimmt tausende Lösungen.

Ich habe einige Programme, die auf verschiedene Art genutzt werden können.
1.) Einmal als normales Programm, wo der Admin das Prog installieren muss. Dann werden auch die Pfade eingehalten.

2.) Dann auf einem Server.
3.) Auf einem Terminalserver.

Es geht bei 2.) und 3.) eigentlich nur um die Anmeldedaten. Diese sollen nicht von jedem User eingegeben werden müssen, sondern sollen schon freigeschaltet werden können. So habe ich diese erst mal in den Programmordner mit kopiert beim Setup. Danach muss aber der Kunde noch einmalig die Freischaltedaten eintragen. Wenn er das nicht im Programmpfad machen kann, weil keine Rechte, dann müßte das Programm dann im Userpfad die Anmeldedaten mit ablegen. Wenn er aber Rechte hat, dann wärden die Anmeldedaten dann für alle User gültig.
So das mal im Groben erklärt.
Ich werde mal überlegen, wie ich das noch anders lösen kann.
Matthias
Es ist nie falsch das Richtige zu tun!
- Mark Twain
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#10

AW: im Programmverzeichnis Datei ändern?

  Alt 1. Apr 2012, 16:33
Mit den entsprechenden Rechten in HKEY_LOCAL_MACHINE
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:05 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz