![]()  | 
	
 
  | 
| 
		 
			 
			#1  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Как вытащить иконку из реестра? 
		
	
		
		
		
		
		
	
		
		
	
	
	Делаю так но не работает: Код: 
	function GetRegistryIconHandle(FileName: string): HICON;
var
  R: TRegistry;
  Alias, //псевдвним для расширения в реестре
 IconPath: string; //путь для файла с иконкой
 IconNum, //номер иконки в файле
 QPos: Integer; //позиция запятой в записи реестра
begin
  IconNum := 0;
  R := TRegistry.Create;    
  try
    R.RootKey := HKEY_CLASSES_ROOT;
    if R.OpenKey('\' + ExtractFileExt(FileName), True) then
      Alias := R.ReadString('');
    R.CloseKey;
    if R.OpenKey('\' + Alias + '\DefaultIcon', True) then
      IconPath := R.ReadString('');
    R.CloseKey;
    QPos := Pos(',', IconPath);
    if QPos <> 0 then
    begin
      IconNum := StrToInt(Copy(IconPath, QPos + 1, 4));
      IconPath := Copy(IconPath, 1, QPos - 1)
    end;
  finally
    R.Free;
  end;
  Result := ExtractIcon(hInstance, PChar(IconPath), IconNum);
end; | 
| 
		 
			 
			#2  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Не занимайся ерундой, тащи из шела: 
		
	
		
		
		
		
		
	
		
		
	
	
	Код: 
	procedure TMailMessageForm.FormCreate(Sender: TObject);
var
  SHFI: TSHFileInfo;
begin
  ilSysIcons.Handle := SHGetFileInfo(PChar(''), 0, SHFI , SizeOf(SHFI),
                       SHGFI_ICON or SHGFI_SMALLICON or SHGFI_SYSICONINDEX);
end;
function TMailMessageForm.GetSystemImageIndex(AFileName : String) : Integer;
var
  SHFI : TSHFileInfo;
begin
  Result := -1;
  Try
    SHGetFileInfo(PChar(AFileName),FILE_ATTRIBUTE_NORMAL,SHFI, sizeof(SHFI),
                  SHGFI_SYSICONINDEX Or SHGFI_USEFILEATTRIBUTES Or SHGFI_SMALLICON );
    Result := SHFI.iIcon;
  Except
  End;
end; | 
| 
		 
			 
			#3  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Мне просто нужно получить иконку ассоциируемогой программы этого файла. Как осуществить? 
		
	
		
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#4  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Тебе дали код. 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#5  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Вы не поняли, например если у меня аудиопроигрыватель по умолчанию AIMP, а значек у файла МР3 показывает Windows проигрывателя. 
		
	
		
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#6  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 удали AIMP, если Windows, то будет играть по умолчанию 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#7  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Цитата: 
	
  |