Autor |
Beitrag |
D. Annies
      
Beiträge: 1843
windows 7
D6 Enterprise, D7 Pers und TD 2006
|
Verfasst: Di 09.01.07 22:58
Hi, Delpher,
gibt es einen Befehl, o.ä., mit dem man erkennen kann, ob es in einem Laufwerk ein Verzeichnis/Unterverzeichnis (steht z.B. in Label3.caption) schon gibt?
Grüße von
Detlef A. Moderiert von Christian S.: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Di 09.01.2007 um 22:16
|
|
C.Schoch
      
Beiträge: 28
WinXp
Turbo Dephi Win 32
|
Verfasst: Di 09.01.07 23:14
_________________ Das System hofft auf Besserung
[Siemens]
|
|
D. Annies 
      
Beiträge: 1843
windows 7
D6 Enterprise, D7 Pers und TD 2006
|
Verfasst: Mi 10.01.07 22:20
Hi, Christian,
danke für deine Antwort(liste). Diesen Befehl kenne ich in der Tat schon, ich meinte, etwas genauer ausgedrückt, ob es dann auch möglich ist, den Pfad zu diesem Verzeichnis sichtbar zu machen, bzw. dahin zu wechseln.
Weißt du, oder jemand anderer, auch darüber etwas?
Danke für weitere Hilfe,
Detlef A.
|
|
Marco D.
      
Beiträge: 2750
Windows Vista
Delphi 7, Delphi 2005 PE, PHP 4 + 5 (Notepad++), Java (Eclipse), XML, XML Schema, ABAP, ABAP OO
|
Verfasst: Mi 10.01.07 22:26
D. Annies hat folgendes geschrieben: | Hi, Christian,
danke für deine Antwort(liste). Diesen Befehl kenne ich in der Tat schon, ich meinte, etwas genauer ausgedrückt, ob es dann auch möglich ist, den Pfad zu diesem Verzeichnis sichtbar zu machen, bzw. dahin zu wechseln.
Weißt du, oder jemand anderer, auch darüber etwas?
Danke für weitere Hilfe,
Detlef A. |
Weiß beim besten Willen nicht, wie genau du dir das vorstellst!
Du meinst, du willst den Inhalt des Verzeichnisses auslesen?
_________________ Pascal keeps your hand tied. C gives you enough rope to hang yourself. C++ gives you enough rope to shoot yourself in the foot
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Mi 10.01.07 22:29
Hallo!
Bitte drück dich präziser aus!
Willst du, dass wenn dieses Verzeichnis existiert, der Explorer aufgeht mit diesem Pfad?
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| uses shellapi; ... shellexecute(application.handle, 'explorer', pchar(''), nil, pchar(derPfad), sw_shownormal); |
LG
Stefan
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
D. Annies 
      
Beiträge: 1843
windows 7
D6 Enterprise, D7 Pers und TD 2006
|
Verfasst: Mi 10.01.07 22:31
Nein, Marco: ich habe folgendes festgestellt: Ich gebe den Verzeichnisnamen ein - von dem ich weiß, dass er in der z.B. 3. Unterverzeichnisebene des Verzeichnisses liegt, in dem ich mich gerade befinde (kann ja auch vom Stammverzeichnis aus sein). Dann sagt mir directoryExists, dass es dieses Verzeichnis gibt, aber nicht, wo, also mit welchem (relativen) Pfad.
Das möchte ich wissen.
Detlef
|
|
Marco D.
      
Beiträge: 2750
Windows Vista
Delphi 7, Delphi 2005 PE, PHP 4 + 5 (Notepad++), Java (Eclipse), XML, XML Schema, ABAP, ABAP OO
|
Verfasst: Mi 10.01.07 22:46
Was genau bedeutet für dich:
"Ich befinde mich in C:/Programme"?
_________________ Pascal keeps your hand tied. C gives you enough rope to hang yourself. C++ gives you enough rope to shoot yourself in the foot
|
|
D. Annies 
      
Beiträge: 1843
windows 7
D6 Enterprise, D7 Pers und TD 2006
|
Verfasst: Mi 10.01.07 22:55
@[quote]Stefan: Ich suche den Pfad für den Namen des Verzeichnisses, dessen Namen (=Name des Unterverzeichnisses) ich kenne.
Also, ich weiß, das Verzeichnis heißt NAMEN und ich will wissen:
jo, der Pfad dahin ist C:\programme\projekt155\Daten\NAMEN
As Klar?
Detlef
|
|
Marco D.
      
Beiträge: 2750
Windows Vista
Delphi 7, Delphi 2005 PE, PHP 4 + 5 (Notepad++), Java (Eclipse), XML, XML Schema, ABAP, ABAP OO
|
Verfasst: Mi 10.01.07 23:00
Wie willst du das wissen? Es kann ja hunderte Ordner "NAMEN" geben!
Du musst dir eben vorher den Pfad abspeichern.  Gibt der User dir denn den Ordnernamen an?
_________________ Pascal keeps your hand tied. C gives you enough rope to hang yourself. C++ gives you enough rope to shoot yourself in the foot
|
|
C.Schoch
      
Beiträge: 28
WinXp
Turbo Dephi Win 32
|
Verfasst: Mi 10.01.07 23:02
IMO gibt es so eine funktion in der VCL nicht.
Verzeichnisse kannst du aber rekursiv mit ForceDirectories anlegen.
Falls du sowas brauchst musst du es dir selbst Programieren
_________________ Das System hofft auf Besserung
[Siemens]
|
|
D. Annies 
      
Beiträge: 1843
windows 7
D6 Enterprise, D7 Pers und TD 2006
|
Verfasst: Mi 10.01.07 23:07
Hi,
2 Verzeichnisse mit diesem Namen würden ja schon für die NichtEindeutigkeit reichen, aber dann würden mich ja auch beide Pfade interessieren ...
Aber vlt ist es ja auch zu viel verlangt ...
Gruß, Detlef
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Mi 10.01.07 23:17
nichts ist zuviel verlangt!
Musste halt suchen: findFirst und findnext mit Paramater faDirectory =)
Have Fun xD
Das Ding würde zum Bleistift bei C:\ anfangen und alle Ordner durchgrasen und suchen, nach deinem Ordnernamen...
Lad dir den EasyHelper von [URL] www.dsdt.info[/URL] herunter, da findest du alles was du brauchst, das was du nicht findest, gibts hier im Forum, und das was es nicht gibt, kann hier gelöst werden =)
LG
Stefan
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
D. Annies 
      
Beiträge: 1843
windows 7
D6 Enterprise, D7 Pers und TD 2006
|
Verfasst: Do 11.01.07 10:26
Hi, Stefan,
habe jetzt erstmal EasyHelper gesogen und fräse da mal durch.
Der Tipp mit faDirectory hört sich gut an ...
Gruß, Detlef
|
|
Manina
      
Beiträge: 44
Win 7 Pro
RAD Studio 2010 Pro
|
Verfasst: Do 11.01.07 20:02
Versuch mal so:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31:
| procedure VerzSuche; var lstSearch, lstFound : TStringList; i : Integer; sr : TSearchRec; dir, dirMask, dirStart : String; begin dirStart := 'C:\Programme'; dirMask := 'NAMEN'; lstSearch := TStringList.Create; lstSearch.Sorted := TRUE; lstSearch.Add(dirStart); lstFound := TStringList.Create; while lstSearch.Count > 0 do begin dir := lstSearch[0]; lstSearch.Delete(0); i := FindFirst(dir + '\*', faDirectory, sr); while i = 0 do begin if sr.Name[1] <> '.' then begin if sr.Name = dirMask then lstFound.Add(dir + '\' + sr.Name) else lstSearch.Add(dir + '\' + sr.Name); end; i := FindNext(sr); end; FindClose(sr); end; for i := 0 to lstFound.Count - 1 do begin ShowMessage('Gefunden: ' + lstFound[i]); end; lstSearch.Free; lstFound.Free; end; |
_________________ Gates, oder Gates nicht ?
|
|
|