![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Пользователь
Регистрация: 27.10.2007
Сообщений: 40
|
![]()
выдает ошибку в этих строчках (пометил красным):
with CI do begin CI.wType := RC3_ICON; CI.Count := 1; end; Stream.Write(CI, SizeOf(CI)); with List, PBitmapInfoHeader(ColorInfo)^ do begin Width := biWidth; Height := biHeight; Colors := biPlanes * biBitCount; DIBSize := ColorInfoSize + ColorBitsSize + MonoBitsSize; DIBOffset := SizeOf(CI) + SizeOf(List); end; |
![]() |
![]() |
![]() |
#12 |
Пользователь
Регистрация: 26.10.2007
Сообщений: 79
|
![]()
См выше, я немного ошибся когда приводил описание структур. Исправил. Лучше просто uses Windows, Graphics напишите и ничего сами не объявляйте.
|
![]() |
![]() |
![]() |
#13 |
Пользователь
Регистрация: 27.10.2007
Сообщений: 40
|
![]()
а теперь delphi ненравится GetIconInfo(Icon, IconInfo)
и все ровно осталась строчка строчка с RC3_ICON |
![]() |
![]() |
![]() |
#14 | |
Пользователь
Регистрация: 26.10.2007
Сообщений: 79
|
![]()
Алексей, Вы издеваетесь?!
![]() function GetIconInfo(hIcon: HICON; var piconinfo: TIconInfo): BOOL; stdcall;external user32 name 'GetIconInfo'; RC3_ICON - в Graphics.pas Цитата:
uses Windows, Graphics; |
|
![]() |
![]() |
![]() |
#15 |
Пользователь
Регистрация: 27.10.2007
Сообщений: 40
|
![]()
не я неиздеваюсь и все в uses находится, но вот что пишет
[Error] Unit1.pas(72): Types of actual and formal var parameters must be identical (Это по поводу GetIconInfo(Icon, IconInfo) - он то вроде нормально работает и правильно определяется в Windows.pas но все же вылазиет это) [Error] Unit1.pas(85): Undeclared identifier: 'RC3_ICON' (а вот этот неопределяется в Graphics.pas, я знаю что он там есть, но определиться неможет почемуто) |
![]() |
![]() |
![]() |
#16 |
Пользователь
Регистрация: 26.10.2007
Сообщений: 79
|
![]()
Выложите свой код, посмотрим. У меня все отлично компилируется и работает.
|
![]() |
![]() |
![]() |
#17 |
Пользователь
Регистрация: 27.10.2007
Сообщений: 40
|
![]()
Вот код, незнаю может че забыл?
Код:
|
![]() |
![]() |
![]() |
#18 |
Пользователь
Регистрация: 26.10.2007
Сообщений: 79
|
![]()
Уберите вот это:
TCursorOrIcon = packed record Reserved: Word; wType: Word; Count: Word; end; TIconInfo = packed record fIcon: BOOL; xHotspot: DWORD; yHotspot: DWORD; hbmMask: HBITMAP; hbmColor: HBITMAP; end; TIconRec = packed record Width: Byte; Height: Byte; Colors: Word; Reserved1: Word; Reserved2: Word; DIBSize: Longint; DIBOffset: Longint; end; HBITMAP = type LongWord; ни к чему если мы ссылаемся на юниты, в которых типы есть. Именно из-за этого получаете Types of actual and formal var parameters must be identical, так как теперь у нас есть два одноименных типа И если не находит константу RC3_ICON, объявите ее сами равной 1. |
![]() |
![]() |
![]() |
#19 |
Пользователь
Регистрация: 27.10.2007
Сообщений: 40
|
![]()
ладно там я все зделал, но теперь уже при сохранении ICO вылазиет ошибка Bitmap Image is not valid.
|
![]() |
![]() |
![]() |
#20 |
Пользователь
Регистрация: 26.10.2007
Сообщений: 79
|
![]()
Значит скорее всего у вас иконка не загружается из файла даже. Рекомендации:
1. Проверить любым редактором ресурсов имя ресурса 2. Проверить срабатывает ли вызов LoadImage и если нет - какой код ошибки. Удачи! |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как программно извлечь иконку из exe файла | Altera | Win Api | 3 | 19.07.2008 21:39 |
Как извлечь имя скачиваемого файла | Crazyman | Работа с сетью в Delphi | 0 | 01.07.2008 02:34 |
Извлечь путь из EXE | NeiL | Общие вопросы Delphi | 3 | 21.05.2008 18:44 |
Извлечь имена приложений | NeiL | Win Api | 3 | 07.05.2008 14:33 |
Извлечь песни из NFS Pro street | DeN1308 | Софт | 0 | 24.11.2007 15:38 |