Wednesday، March 29، 2006

چطور میشه از داخل برنامه دلفی به سطل آشغال ویندوز دسترسی داشت؟

سورس کد زیر می تواند اینکار را برای شما انجام دهد.

در یک برنامه جدید یک دکمه بگذارید و روتین زیر را برای رویداد کلیک آن بنویسید.

Place a TButton named "OpenBinButton" on a form



uses
ShlObj, ShellAPI, ... ;
Place a TButton named "OpenBinButton" on a form, handle its OnClick event as:

procedure TRecycleBinForm.OpenBinButtonClick(Sender: TObject) ;
var
recycleBinPIDL: PItemIDList;
execInfo: TShellExecuteInfo;
begin
SHGetSpecialFolderLocation(Handle, CSIDL_BITBUCKET, recycleBinPIDL) ;
with execInfo do
begin
cbSize := Sizeof(execInfo) ;
fMask := SEE_MASK_IDLIST;
Wnd := Handle;
lpVerb := nil;
lpFile := nil;
lpParameters := nil;
lpDirectory := nil;
nShow := SW_SHOWNORMAL;
hInstApp:=0;
lpIDList := recycleBinPIDL;
end;
ShellExecuteEx(@execInfo) ;
end;