Показать диалог для организации избранных документов

{codecitation class=»brush: pascal; gutter: false;» width=»600px»}

Оформил: DeeCo

Автор: http://www.swissdelphicenter.ch

uses

SHDocVw, ShlObj, ShellApi;

{….}

function OrganizeFavorite(h: THandle; path: PChar): Boolean;

stdcall external ‘shdocvw.dll’ Name ‘DoOrganizeFavDlg’;

{….}

function GetSpecialFolderPath(CallerHandle: THandle; CSIDL: Integer): PChar;

var

exInfo: TShellExecuteInfo;

Buf: PChar;

begin

// initialize all fields to 0

FillChar(exInfo, SizeOf(exInfo), 0);

with exInfo do

begin

cbSize := SizeOf(exInfo);

fMask := SEE_MASK_FLAG_DDEWAIT or SEE_MASK_IDLIST;

Wnd := CallerHandle;

nShow := SW_SHOWNORMAL;

Buf := StrAlloc(MAX_PATH);

SHGetSpecialFolderPath(wnd, Buf, CSIDL, True);

Result := Buf;

end;

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

OrganizeFavorite(Handle, GetSpecialFolderPath(Handle, CSIDL_FAVORITES));

end;

{/codecitation}

Добавить комментарий