// Es wird das
Programme
(bzw. DLL) aufgefunden, welches
für das Öfnen uses shellapi;
function findprog(edg: string; out s: string): boolean;
var
dummy, hlp: string;
buffer: Pchar;
th: THandle;
begin
hlp := copy(edg, 1, 1);
if hlp = '*' then
delete(edg, 1, 1)
else if hlp <> '.' then
edg := '.' + edg;
dummy := 'dummy' + edg;
getmem(buffer, max_path);
result := false;
th := createfile(Pchar(dummy), 0, 0, nil, create_always, 0, 0);
if th = INVALID_HANDLE_VALUE then
exit;
closehandle(th);
result := findexecutable(Pchar(dummy), nil, buffer) > 32;
s := buffer;
freemem(buffer);
deletefile(dummy);
end;
// Beispielaufruf
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
if not findprog('bmp', s) then
showmessage('Diese Dateiendung ist nicht registriert!')
else
showmessage(s);
end;
|
Zugriffe seit 6.9.2001 auf Delphi-Ecke





