Как сохранить иконку в файл имея её хендл? |
Previous Top Next |
Code: |
uses Windows,ActiveX; {©Drkb v.3(2007): www.drkb.ru}
function OleSavePictureFile(dispPicture: IDispatch; bstrFileName: TBStr): HResult; stdcall; external 'oleaut32.dll';
// icon - дескриптор иконки // FileName - файл, в который сохранять // DestroyAfterSave - уничтожать дескриптор иконки после сохранения или нет function StoreIconFile(icon:HICON; FileName:string; DestroyAfterSave:boolean=false):boolean; const IID_IPictureDisp:TGUID = '{7BF80981-BF32-101A-8BBB-00AA00300CAB}'; var pd:TPictDesc; ipd:IPictureDisp; begin pd.cbSizeofstruct:=sizeof(TPictDesc); pd.picType:=PICTYPE_ICON; pd.hIcon:=icon; result:=(OleCreatePictureIndirect(pd,IID_IPictureDisp,DestroyAfterSave,ipd)=S_OK) and (OleSavePictureFile(ipd, StringToOLEStr(FileName))=S_OK) end; |
©Drkb::02351
Взято из http://forum.sources.ru
Автор: Krid