Delphi FAQ Pliki

Jak wyświetlić listę plików z danego katalogu w notatniku

Bruno(M)

Jest to mój pierwszy FAQ w 4programmers, więc proszę o wyrozumiałość.

uses 
  ShellAPI;
 
procedure ExecuteShellCommand(cmdline: String; Hidden: Boolean);
const
  Flags: array [Boolean] of Integer = (SW_SHOWNORMAL, SW_HIDE);
var
  CMDbuffer : array [0..MAX_PATH] of Char;
begin
  GetEnvironmentVariable('COMSPEC', CMBbuffer, SizeOf(CMDbuffer));
  StrCat(CMDbuffer, ' /C ');
  StrPCopy(StrEnd(CMDbuffer), CMDline);
  WinExec(CMDbuffer, Flags[Hidden]);
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
  ExecuteShellCommand('dir C:\ > C:\ListaPlikow.txt', True);
  ShellExecute(Handle, 'open', 'notepad', 'C:\ListaPlikow.txt', nil, SW_SHOW);
end;

W naszym przypadku zostanie wyświetlona zawartość katalogu C:\
Jeżeli chcesz wyświetlić katalog Windows wpisz 'dir C:\Windows > ...

3 komentarzy

No niezły artykuł, ale można też inaczej.

var
sercz: TSearchRec;
text: TextFile;
begin
AssignFile(text, 'lista.txt');
ReWrite(text);
if FindFirst('C:*.*', faAnyFile, sercz) = 0 then
begin
repeat
WriteLn(text, sercz.Name);
until FindNext(sercz)<>0;
FindClose(sercz);
end;
ShellExecute(Handle, 'open', 'notepad', 'lista.txt', nil, SW_SHOW);
end;

A i mam pytanko... dla czego usuwa mi ukośniki (nie napisałem tego znaku bo tak czy siak mi usunie)?

Jest to mój pierwszy fag w 4programmers
:D:D
'fag' po angielsku, to pedał :P fajna literówka :]

P.S.
Doskonały pomysł z 'wyrazy pochodne' - szczególnie jeśli chodzi o info dla wyszukiwarki

A może dać przy tworzeniu artykułu pole 'Keywords', przecież nie zawsze w słowach artu występują słowa kluczowe... :>