몇 시간 전 아이콘을 얻는 속도를 조정 한 fastest way to get shell icon을 요청했지만 문제는 일부 시스템 바로 가기 (lnk 파일)가 올바른 아이콘을 표시하지 않는다는 것입니다. 예 중 하나로서 시스템 바로 가기에서 바로 가기 쉘 아이콘을 얻는 방법은 무엇입니까?
는 다음과 같은 코드를 사용하는 경우Windows Fax and Scan.lnk
파일, ...
procedure TForm2.Button1Click(Sender: TObject);
var
Icon: TIcon;
FileInfo: TSHFileInfo;
begin
FillChar(FileInfo, SizeOf(FileInfo), 0);
SHGetFileInfo(PChar('C:\Windows Fax and Scan.lnk'), FILE_ATTRIBUTE_NORMAL,
FileInfo, SizeOf(FileInfo), SHGFI_USEFILEATTRIBUTES or SHGFI_ICON or
SHGFI_SMALLICON);
Icon := TIcon.Create;
try
Icon.Handle := FileInfo.hIcon;
Canvas.Draw(10, 10, Icon);
finally
Icon.Free;
end;
end;
대신이 아이콘으로 표시됩니다 ...
들을 수 있습니다 종류의 기본 바로 가기 아이콘 ...
바로 가기 파일에서 시스템 아이콘 (첫 번째 이미지의 아이콘)을 가져 오는 방법을 알고 계십니까?