用哪个Api?

解决方案 »

  1.   

    HICON ExtractIcon(    HINSTANCE hInst, // instance handle
        LPCTSTR lpszExeFileName, // filename of file with icon
        UINT nIconIndex  // index of icon to extract
       );
      

  2.   

    用这个:你能得到32*32和16*16两种图标,对于你作文件浏览器很方便!
    ///////////////////////////
    function GetIconHandle(filename:string;small:boolwan=false):HIcon;
    var
    f:SHFILEINFO;
    flag:uint;
    begin
    if small then
      flag:=SHGFI_SMALLICON
    else
      flag:=SHGFI_LARGEICON ;
     shgetfileinfo(pchar(filename),faanyfile,f,sizeof(F),flag+SHGFI_ICON);
     result:=f.hIcon;
    end;
    function GetIcon(filename:string;small:boolean=false):TIcon;
    begin
      result:=ticon.create;
      result.handle:=geticonhandle(filename,small);
    end;