AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) TRegistry Unterschied zwischen Delphi 7 und 2009

TRegistry Unterschied zwischen Delphi 7 und 2009

Ein Thema von Shark99 · begonnen am 6. Mai 2015 · letzter Beitrag vom 11. Mai 2015
Antwort Antwort
Seite 7 von 10   « Erste     567 89     Letzte » 
Popov
(Gast)

n/a Beiträge
 
#61

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 7. Mai 2015, 13:50
Womit sich die Frage stellt was vor einem Monat passiert ist?

Gehen wir mal davon aus, dass der Fehler nicht im Code ist, denn sonst würde auch mein Dreizeiler nicht funktionieren, muss das Problem irgendwo anders liegen.

Hättest du Probleme eine Datei zu erstellen, wäre die Sache klar, das liegt an den Rechten des Kontos über den Ordner. Übrigens, man kann auch die Rechte von Administratoren reduzieren, nur das schöne ist, sie können sich, soweit man sich wiederum nicht das Recht Rechte zu ändern entzogen hat, die Rechte wieder geben. Also Administrator-Rechte alleine sagen nichts auf. Auf der anderen Seite hast du ein Bild gepostet und danach sollte alles ok sein.

Übrigens, fast ähnlich wie im Explorer, kann man auch Rechte in Regedit vergeben und entziehen. Es wäre somit interessant zu sehen was die einzelnen User für Rechte in Regedit haben.

Kommen wir von FAT32 Lw D: zu NTFS Lw C:. Erstellst du das Programm auf Lw D:, erstellst du es im Grunde unter dem Benutzer "Jeder". Kopierst du es (nicht verschieben) auf Lw C:, müssten im Grunde die Rechte des aktuellen Nutzers angenommen werden.

Kommen wir zu einer unwahrscheinlichen aber durchaus möglichen Möglichkeit. Ich beziehe mich hier auf die unterschiedlichen Dateien unter Lw D: und Lw C:. Theoretisch könnte ja sein, dass man keine Leserechte an einer Unit hat. Das Problem wäre in dem Fall nicht der Ordner in dem du etwas kompilierst, sondern der Zugriff auf einen anderen Ordner, z. B. in Programme. Die Möglichkeit hat aber einen Hacken: ich dem Fall dürftest du auch nicht korrekt auf Lx D: kompilieren.


Ich empfehle dir noch einen Test. Geh unter Systemsteuerung auf Benutzer. Erstelle zwei Konten. Das eine Shark99A mit Standardrechten. Dabei geht nichts kaputt, du kannst das Konto anschließend inkl. erstellte Dateien wieder löschen. Dann erstellst du noch ein zweites Konto, Shark99B, mit Administratorrechten. Geh dann auf "Einstellung der Benutzerkontensteuerung" und stelle alles runter (es wird nichts mehr geblockt).

Sollte das das Programm bereits mit Shark99A funktionieren, ist in deinem Standardkonto etwas mit den Rechten durcheinander. Sollte es bei Shark99B funktionieren, wird da etwas geblockt.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#62

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 7. Mai 2015, 14:14
Kommen wir von FAT32 Lw D: zu NTFS Lw C:. Erstellst du das Programm auf Lw D:, erstellst du es im Grunde unter dem Benutzer "Jeder". Kopierst du es (nicht verschieben) auf Lw C:, müssten im Grunde die Rechte des aktuellen Nutzers angenommen werden.
Das ist nicht ganz korrekt! Bei der Kopie von einem FAT-Laufwerk werden wie auch sonst die (NTFS-)Rechte des Zielverzeichnisses eingetragen (Bei FAT->NTFS gilt das auch für's Verschieben!). Auch wenn die "Dateieigenschaften" jeder als Bestzer vorgaukeln, ist der aktuelle Benutzer Besitzer der kopierten Datei.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Shark99

Registriert seit: 16. Mai 2007
403 Beiträge
 
#63

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 10. Mai 2015, 00:40
Habe einen neuen Admin-User erstellt und er hat genau das gleiche Problem. Habe dazu noch bemerkt dass es sich nicht nur um ein Registry Problem handelt, sondern Dateien können auch nur gelesen, aber nicht geschrieben werde. D.h. eine Exe die von einem Verzeichnis gestartet wird, bei dem der Parent nicht älter als 07.04.2015 ist hat nur Lesezugriff auf die gesamte Festplatte. Ich werde wohl um eine Neuinstallation von Windows drin drumherum kommen. Warte aber wohl noch auf Windows 10.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie
(Moderator)

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#64

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 10. Mai 2015, 00:53
Ich blicke nicht mehr durch. Könntet du mal bitte eine Zusammenfassung der bisherigen Erkenntnisse verfassen?

Aber wenn es um die Registry geht, spielen doch Verzeichnisrechte keine Rolle. Guck dir mal in der Registry an wer welche Rechte für den Schlüssel hat.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Shark99

Registriert seit: 16. Mai 2007
403 Beiträge
 
#65

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 10. Mai 2015, 01:21
Zusammenfassung aller Erkenntnisse:

- es handelt sich nicht um ein Delphi Problem, sondern ein Windows Problem und muss am 07.04.2015 bei mir passiert sein
- ich bin als Admin-user eingelogt, kann mit dem Explorer alle Programme starten, kopieren, Dateien löschen etc, auch in Systemverzeichnissen
- Anlegen eines zweiten Admin-Accounts hilft nicht
- das folgende Problem betrifft nur c:\, mit d:\ geht alles wunderbar (andere Partition auf gleicher SSD)

Problem: Wenn eine beliebige Executable (also auch notepad.exe) aus einem Verzeichnis ausgeführt wird dessen Parent-Verzeichnis nach dem 07.04.2015 erstellt wurde, hat diese App nur Leserechte und zwar sowohl für die Registry als auch beim Schreiben von Dateien.

Beispiel a: 1. c:\ordner1 wird erstellt 2. notepad.exe hin kopiert und gestartet 3. Datei -> Speichern als -> My Documents: Notepad meldet dass ich keine Zugriffsrechte zum Speichern habe. Rechtsklick auf notepad.exe und 'Run as administrator' bringt gleiches Ergebnis.

Beispiel b: alles wie im Beispiel a, aber Ordner nicht c:\ordner1 sondern c:\windows\ordner1 und es treten keinerlei Probleme auf, weil c:\windows VOR dem 07.04.2015 erstellt wurde.

Ich habe mittlerweile 10 Stunden gegoogelt und das Problem nicht noch einmal gefunden. Also bleibt wohl nur Neuinstallation.
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#66

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 10. Mai 2015, 01:29
Du hast einen zweiten Admin-Konto erstellt. Hast du das Ganze auch mit einem Standard-Konto getestet?

Hier gilt nicht Admin = mehr Rechte, also kann man sich das Standard-Konto sparen.
  Mit Zitat antworten Zitat
Shark99

Registriert seit: 16. Mai 2007
403 Beiträge
 
#67

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 10. Mai 2015, 01:37
Ja, hatte auch einen normalen User erstellt, dieser hatte aber das Problem auch.
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#68

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 10. Mai 2015, 03:04
Wenn du Lust hast, noch ein Test. Lade und installiere mal das Tool Attribute Changer. Damit kannst du nicht nur Attribute ändern, sondern auch die Datum-/Zeitangaben für Ordner/Dateien. Ändere das Datum eines der Ordner auf ein Tag vor dem 07.04.2015.

Achso, solltest du das Programm installieren, es fügt ein Eintrag in das Kontextmenü des Explorers.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
8.420 Beiträge
 
Delphi 10.4 Sydney
 
#69

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 10. Mai 2015, 09:27
Wie schon gesagt:
Das einzig sinnvolle um wirklich festzustellen wo der Unterschied liegt, ist den Process Monitor zu starten und nachzuschauen...
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Shark99

Registriert seit: 16. Mai 2007
403 Beiträge
 
#70

AW: TRegistry Unterschied zwischen Delphi 7 und 2009

  Alt 10. Mai 2015, 23:15
Wenn du Lust hast, noch ein Test. Lade und installiere mal das Tool Attribute Changer. Damit kannst du nicht nur Attribute ändern, sondern auch die Datum-/Zeitangaben für Ordner/Dateien. Ändere das Datum eines der Ordner auf ein Tag vor dem 07.04.2015.

Achso, solltest du das Programm installieren, es fügt ein Eintrag in das Kontextmenü des Explorers.
Hab das Datum mit Total Commander auf 01.01.2014 geändert. Keine Änderung.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 03:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf