Datei ohne Dateizugriff öffnen/kopieren?
-
- Beiträge: 244
- Registriert: Do 21. Jan 2010, 22:33
- OS, Lazarus, FPC: Windows Vista (L 0.9.31 FPC 2.5.1)
- CPU-Target: 32Bit
- Wohnort: z.z. Brasilien, sonst 82335 Berg-Leoni (südlich von München)
Datei ohne Dateizugriff öffnen/kopieren?
Hallo,
gibt es eine Möglichkeit, eine Datei, die von einer anderen Anwendung belegt ist, trotzdem zu öffnen bzw zu kopieren?
Konkret geht es mir um die Registry in Windows 7 (Usr.dat oder so ähnlich). Windows verhindert, daß ich die Datei woandershin kopieren kann (weil von einer anderen Anwendung blockiert). Zu DOS-Zeiten (und auch noch zu Beginn von Windows) gab es die Möglichkeit, direkt auf die Festplatte zuzugreifen, dort die FAT auszulesen und damit die Cluster zu bestimmen, die zu einer bestimmten Datei gehörten und diese dann cluster-weise an einen anderen Ort zu kopieren.
Gibt es in Lazarus entsprechende Komponenten, mit denen ich erfahren kann, welche Cluster zu einer Datei gehören und ich sie dann kopieren kann?
Oder wie machen es zB Registry-Programme, die ja auch auf die Registry zugreifen und diese auslesen und verändern können. (Geht das vielleicht nur über bestimmte dazu von Windows zur Verfügung gestellte Prozeduren?)
Herzlichen Dank für alle weiterführenden Hinweise.
gibt es eine Möglichkeit, eine Datei, die von einer anderen Anwendung belegt ist, trotzdem zu öffnen bzw zu kopieren?
Konkret geht es mir um die Registry in Windows 7 (Usr.dat oder so ähnlich). Windows verhindert, daß ich die Datei woandershin kopieren kann (weil von einer anderen Anwendung blockiert). Zu DOS-Zeiten (und auch noch zu Beginn von Windows) gab es die Möglichkeit, direkt auf die Festplatte zuzugreifen, dort die FAT auszulesen und damit die Cluster zu bestimmen, die zu einer bestimmten Datei gehörten und diese dann cluster-weise an einen anderen Ort zu kopieren.
Gibt es in Lazarus entsprechende Komponenten, mit denen ich erfahren kann, welche Cluster zu einer Datei gehören und ich sie dann kopieren kann?
Oder wie machen es zB Registry-Programme, die ja auch auf die Registry zugreifen und diese auslesen und verändern können. (Geht das vielleicht nur über bestimmte dazu von Windows zur Verfügung gestellte Prozeduren?)
Herzlichen Dank für alle weiterführenden Hinweise.
Re: Datei ohne Dateizugriff öffnen/kopieren?
Evtl. genügt Dir soetwas wieKonkret geht es mir um die Registry in Windows 7
Code: Alles auswählen
uses ..., Registry;
...
procedure TForm1.Button1Click(Sender: TObject);
var
Theme: String;
Reg: TRegistry;
begin
Reg:=TRegistry.Create;
Reg.RootKey:=HKEY_CURRENT_USER;
Reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Themes', true);
Theme:=Reg.ReadString('CurrentTheme');
ShowMessage(Theme);
Reg.CloseKey;
Reg.free;
end;
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
-
- Beiträge: 244
- Registriert: Do 21. Jan 2010, 22:33
- OS, Lazarus, FPC: Windows Vista (L 0.9.31 FPC 2.5.1)
- CPU-Target: 32Bit
- Wohnort: z.z. Brasilien, sonst 82335 Berg-Leoni (südlich von München)
Re: Datei ohne Dateizugriff öffnen/kopieren?
Herzlichen Dank,
aber ich verstehe nicht so ganz, was ich damit anfangen soll. Damit kann ich doch nur einzelne Elemente in der Registry auslesen und ändern.
Aber die ganze Registry als Binärdatei an einen anderen Ort kopieren? Dann müßte ich wohl ALLE Elemente auslesen und in eine (neue) TRegistry übertragen? Ist das möglich?
aber ich verstehe nicht so ganz, was ich damit anfangen soll. Damit kann ich doch nur einzelne Elemente in der Registry auslesen und ändern.
Aber die ganze Registry als Binärdatei an einen anderen Ort kopieren? Dann müßte ich wohl ALLE Elemente auslesen und in eine (neue) TRegistry übertragen? Ist das möglich?
- m.fuchs
- Lazarusforum e. V.
- Beiträge: 2822
- Registriert: Fr 22. Sep 2006, 19:32
- OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
- CPU-Target: x86, x64, arm
- Wohnort: Berlin
- Kontaktdaten:
Re: Datei ohne Dateizugriff öffnen/kopieren?
Und hier wieder einmal die klassische Frage: Warum? bzw. Was möchtest du am Ende erreichen?br_klaus hat geschrieben:[...]Aber die ganze Registry als Binärdatei an einen anderen Ort kopieren?[...]
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
-
- Beiträge: 244
- Registriert: Do 21. Jan 2010, 22:33
- OS, Lazarus, FPC: Windows Vista (L 0.9.31 FPC 2.5.1)
- CPU-Target: 32Bit
- Wohnort: z.z. Brasilien, sonst 82335 Berg-Leoni (südlich von München)
Re: Datei ohne Dateizugriff öffnen/kopieren?
Was ich damit erreichen will?
Ich möchte den UserNamen (auch im Namen des User-Verzeichnisses) ändern.
Wenn ich zB bisher in C:\Users folgende Unterverzeichnisse habe: AllUsers, Default, Public und Martin, dann möchte ich statt Martin Peter haben. Leider kann ich nicht den Namen des Verzeichnisses ändern (denn das wäre das einfachste - liesse sich das nicht durch direktes Schreiben in das Dateiverzeichnis bewerkstelligen?), also bleibt mir nur, alle Dateien von C:\Users\Martin nach C:\Users\Peter zu kopieren und dazu gehört auch die Registry (C:\Users\Martin\AppData\Local\Microsoft\Windows\UsrClass.dat).
Auch die Dateien UsrClass.dat.LOG1 und UsrClass.dat.LOG2 und noch einige weitere Dateien lassen sich nicht kopieren (und auch nicht öffnen zum Anschauen), da kommt Fehlermeldung: sind im System geöffnet, soll es später noch einmal versuchen.
Ich muß dann eh noch in dieser kopierten Registry alle Verzeichniseinträge mit \Martin\ durch \Peter\ ersetzen.
Oder gibt es vielleicht ein Tool, das den Usernamen so vollständig ändert, daß auch auf der Festplatte nur mehr der neue Name erscheint?
Ich möchte den UserNamen (auch im Namen des User-Verzeichnisses) ändern.
Wenn ich zB bisher in C:\Users folgende Unterverzeichnisse habe: AllUsers, Default, Public und Martin, dann möchte ich statt Martin Peter haben. Leider kann ich nicht den Namen des Verzeichnisses ändern (denn das wäre das einfachste - liesse sich das nicht durch direktes Schreiben in das Dateiverzeichnis bewerkstelligen?), also bleibt mir nur, alle Dateien von C:\Users\Martin nach C:\Users\Peter zu kopieren und dazu gehört auch die Registry (C:\Users\Martin\AppData\Local\Microsoft\Windows\UsrClass.dat).
Auch die Dateien UsrClass.dat.LOG1 und UsrClass.dat.LOG2 und noch einige weitere Dateien lassen sich nicht kopieren (und auch nicht öffnen zum Anschauen), da kommt Fehlermeldung: sind im System geöffnet, soll es später noch einmal versuchen.
Ich muß dann eh noch in dieser kopierten Registry alle Verzeichniseinträge mit \Martin\ durch \Peter\ ersetzen.
Oder gibt es vielleicht ein Tool, das den Usernamen so vollständig ändert, daß auch auf der Festplatte nur mehr der neue Name erscheint?
-
- Lazarusforum e. V.
- Beiträge: 3178
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: Datei ohne Dateizugriff öffnen/kopieren?
http://www.microsoft.com/resources/docu ... x?mfr=truebr_klaus hat geschrieben:Ich möchte den UserNamen (auch im Namen des User-Verzeichnisses) ändern.
bzw. http://www.ghacks.net/2011/03/28/how-to ... lder-name/
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
-
- Lazarusforum e. V.
- Beiträge: 999
- Registriert: Do 17. Apr 2008, 01:59
- OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
- CPU-Target: Intel i7-10750 64Bit
- Wohnort: Freiburg
Re: Datei ohne Dateizugriff öffnen/kopieren?
Das geht nicht solange du den Account ändern möchtest, unter dem du angemeldet bist.
Das beste ist Windows abgesichert zu starten und die Registrieeinträge mit einem Tool wie 'Advanced Regedit' über die Ersetzen-Funktion zu tauschen.
Nicht vergessen, die Daten an den neuen Ort zu kopieren!
Alternativ der einfachere Weg:
Einen neuen Benutzer anlegen, einmal unter dem neuen Benutzer anmelden, dann die Daten (z.Bsp. im abgesicherten Modus) dort hinein verschieben (mache ich z.B. mit einer Linux Live-CD).
Das beste ist Windows abgesichert zu starten und die Registrieeinträge mit einem Tool wie 'Advanced Regedit' über die Ersetzen-Funktion zu tauschen.
Nicht vergessen, die Daten an den neuen Ort zu kopieren!
Alternativ der einfachere Weg:
Einen neuen Benutzer anlegen, einmal unter dem neuen Benutzer anmelden, dann die Daten (z.Bsp. im abgesicherten Modus) dort hinein verschieben (mache ich z.B. mit einer Linux Live-CD).
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.
Re: Datei ohne Dateizugriff öffnen/kopieren?
Evtl. hilft Dir: http://forum.chip.de/windows-7/windows- ... ost9136376
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;