hallo
ich möchte gern die function benutzen
dwFilesInRecycleBin
so benutze ich sie
Delphi-Quellcode:
var
files_i : Int64;
begin
dwFilesInRecycleBin(files_i);
ShowMessage(inttostr(files_i));
end;
hier die ganze function
Delphi-Quellcode:
function dwFilesInRecycleBin(var FileCount: Int64): Boolean;
type
_SHQUERYRBINFO = record
cbSize: DWord;
i64Sizelow, i64Sizehigh,
i64NumItemslow, i64NumItemshigh: DWord;
end;
TPSHQUERYRBINFO = ^_SHQUERYRBINFO;
TSHQueryRecycleBin = function(pszRootPath: PChar;
var pSHQueryRBInfo: TPSHQUERYRBINFO): HRESULT; stdcall;
var
SHQueryRecycleBin: TSHQueryRecycleBin;
SHQueryRBInfo: _SHQUERYRBINFO;
pSHQueryRBInfo : TPSHQUERYRBINFO;
LibHandle: THandle;
begin { EmptyRecycleBin }
result:= FALSE;
SHQueryRBInfo.cbSize:= SizeOf(SHQueryRBInfo);
LibHandle := LoadLibrary(PChar('Shell32.dll'));
if LibHandle <> 0 then @SHQueryRecycleBin :=
GetProcAddress(LibHandle, 'SHQueryRecycleBinA')
else
begin
MessageDlg('Shell32.dll konnte nicht geladen werden.', mtError, [mbOK], 0);
Exit;
end;
if not Assigned(SHQueryRecycleBin) then begin
MessageDlg('Shell32.dll konnte nicht geladen werden.', mtError, [mbOK], 0);
Exit;
end;
pSHQueryRBInfo := @SHQueryRBInfo;
SHQueryRBInfo.cbSize := sizeof(SHQueryRBInfo);
SHQueryRBInfo.i64numitemslow := 0;
SHQueryRBInfo.i64numitemshigh := 0;
result:= ( SHQueryRecycleBin(PChar('c:'), pSHQueryRBInfo)=S_OK);
filecount := SHQueryRBInfo.i64numitemslow;
FreeLibrary(LibHandle); @SHQueryRecycleBin := nil;
end;
ich bekomme immer nur 0 zurüch obwohl der papierkorb voll ist, leider weiß ich nicht warum
function falsch benutzt ?
leider ist bei delphiworks keine kontaktadresse