Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Sichern von Daten (https://www.delphipraxis.net/739-sichern-von-daten.html)

m-werk 30. Aug 2002 21:09


Sichern von Daten
 
Hallo Leute,

Ich habe in meinem Programm ein Menü, welches sich 'Datenbank sichern' nennt.

Nun möchte ich die Datenbank sichern. Der Path der Original-DB steht in der Registry. Nun möchte ich es so machen, dass wenn ich auf Datenbank sichern klicke, dass dann eine art Explorer erscheint, wo ich die Datenbank hinspeichern möchte.

Wie kann man das realisieren?

Luckie 30. Aug 2002 21:21

Hier mit kann´st du dir einen Ordner auswählen:
Code:
[b]uses[/b] shlobj;


[b]function[/b] TfrmMain.OpenFolder(root: Integer; Caption: [b]string[/b]): [b]string[/b]; [i]//Verzeichnis-Öffnen-Dialog-Funktion[/i]
[b]var[/b]
  bi: TBrowseInfo;
  lpBuffer: PChar;
  pidlPrograms, pidlBrowse: PItemIDList;
[b]begin[/b]
  [b]if[/b] ([b]not[/b] SUCCEEDED(SHGetSpecialFolderLocation(GetActiveWindow, root,
    pidlPrograms))) [b]then[/b]
    exit;
  lpBuffer := StrAlloc(MAX_PATH);
  bi.hwndOwner := GetActiveWindow;
  bi.pidlRoot := pidlPrograms;
  bi.pszDisplayName := lpBuffer;
  bi.lpszTitle := PChar(Caption);
  bi.ulFlags := BIF_RETURNONLYFSDIRS;
  bi.lpfn := [b]nil[/b];
  bi.lParam := 0;

  pidlBrowse := SHBrowseForFolder(bi);
  [b]if[/b] (pidlBrowse <> [b]nil[/b]) [b]then[/b]
    [b]if[/b] SHGetPathFromIDList(pidlBrowse, lpBuffer) [b]then[/b]
      Result := lpBuffer;
  StrDispose(lpBuffer);
[b]end[/b];

[b]procedure[/b] TfrmMain.cmdOpenClick(Sender: TObject);
[b]begin[/b]
  txtPath.Caption := OpenFolder(CSIDL_DRIVES, 'Verzeichnis wählen'); [i]//Übergabe des gewählten Verzeichnisses[/i]
[b]end[/b];
Und dann nur noch CopyFile.

Christian Seehase 30. Aug 2002 22:36

Moin m-werk,

und wenn Dir das zu aufwändig ist, schau Dir mal die Funktionen SelectDirectory aus der Unit Filectrl an.

Luckie 31. Aug 2002 12:31

Produziert die nicht diesen Win3.1-Oldstyle Dialog?

Christian Seehase 31. Aug 2002 12:39

Moin Luckie,

das hängt davon ab, welche der beiden Möglichkeiten man verwendet.
Die mit Caption als erstem Parameter tut das nicht.

Luckie 31. Aug 2002 12:44

:hi:

Danke, und wieder etwas schlauer geworden und das an meinem Geburtstag :mrgreen:.

m-werk 1. Sep 2002 16:55

Danke Luckie für den Code, aber mit dem hab ich leider nichts anfangen können aber er hat mein gedächnis einwenig auf die sprünge geholfen. Ich hab jetzt fast alles geschaft bis auf eine Sache noch.

Ich habe in der Registry den Ordner stehen, wo die Datei ist, welche ich sichern möchte. Diese Datei nennt sich 'Kundenverwaltung.mdb'

Ich kann zwar den Ordner auslesen und im Label anzeigen, was ich aber nicht kann aber möchte, ist dass die Datei, die in diesem Ordner liegt, in einem anderen Label erscheint.

Wie kann ich das noch machen?

Luckie 1. Sep 2002 17:05

Suchst du eventuell ExtractFilename?

m-werk 1. Sep 2002 17:10

Ja, könnte sein. Wie kann ich das mit extractfilename machen?

Luckie 1. Sep 2002 17:18

F1

Code:
lable1.Caption := ParamStr(0); // Programmpfad mit Anwendungsname
label2.Caption := ExtractFilename(ParamStr(0)); // nur Anwendungsname


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:04 Uhr.
Seite 1 von 2  1 2      

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