Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.12;
Скачать: CL | DM;

Вниз

Загрузка файлов в dll   Найти похожие ветки 

 
Albenous ©   (2006-10-15 19:19) [0]

Хочу всю коллекцию иконок загрузить в dll и не знаю как это сделать. Именно ЗАГРУЗИТЬ в dll, а не обратиться к конкретному файлу в dll. Подскажите, как сделать?


 
Leonid Troyanovsky ©   (2006-10-15 20:12) [1]


> Albenous ©   (15.10.06 19:19)  

> это сделать. Именно ЗАГРУЗИТЬ в dll, а не обратиться к конкретному
> файлу в dll. Подскажите, как сделать?


Извольте изъясняться ясней, сэр.

--
Regards, LVT.


 
Anatoly Podgoretsky ©   (2006-10-15 20:40) [2]

UpdateResource


 
Albenous ©   (2006-10-15 22:25) [3]

Яснее? Пожалуйста. Меня интересует как это прописать в программном коде создаваемой мной динамической библиотеки загрузку файла (допустим image.jpg) при помощи среды Dephi.
В конечном итоге (после компиляции) дожна и получиться динамическая библиотека в файлом "внутри".

Как обратиться к файлу (в нашем случае - image.jpg) написано в любой книге по этой тематике, а как загрузить его - нигде.


 
Ketmar ©   (2006-10-15 22:28) [4]

автор, ты это... с терминами определись. а то ничего не ясно. ресурсы вместе с остальными частями dll загружает сама винда. помогать ей в этом не надо.


 
Leonid Troyanovsky ©   (2006-10-15 22:31) [5]


> Albenous ©   (15.10.06 22:25) [3]


Гм..
А можно, как Чапаев - на картошках?
Т.е., кто впереди, кто позади.

--
Regards, LVT.


 
Albenous ©   (2006-10-15 22:48) [6]

Хорошо, попробуем иначе. Как тов. Чапаев.
Есть Windows XP, Delphi 7 и ровные руки.
Надо получить dll внутри которой были бы иконки (и прочее). Как это сделать?


 
Ketmar ©   (2006-10-15 22:52) [7]

я так подозреваю, что dll должна быть загружаема через LoadLibrary()? навскидку:
* запихать в ресурсы;
* запихать в константу.


 
Desdechado ©   (2006-10-15 22:59) [8]

пишешь файл *.rc
компилируешь его с помощью brc32.exe
прилепляешь скомпилированные ресурсы к exe/dll директивой компилятора
{$R *.RES}


 
Albenous ©   (2006-10-15 23:00) [9]

Пожалуйста программным кодом и, желательно, с пояснениями.


 
Leonid Troyanovsky ©   (2006-10-15 23:01) [10]


> Albenous ©   (15.10.06 22:48) [6]

> Надо получить dll внутри которой были бы иконки (и прочее).
>  Как это сделать?


Можно, например, через TImageList, он сам создаст необходимый ресурс.
А можно и каждую иконку, через {$R myicons.res}

--
Regards, LVT.


 
Albenous ©   (2006-10-15 23:06) [11]

я не поленюсь и каждую иконку в отдельности обработать. Только как?


 
Ketmar ©   (2006-10-15 23:07) [12]

>[9] Albenous(c) 15-Oct-2006, 23:00
>Пожалуйста программным кодом и, желательно, с пояснениями.
ставишь Resource Workshop. делаешь ресурс. сохраняешь как .res. подключаешь через {$R myfile.res}. самый простой и удобный способ.

зыж или imagedit.exe из bin. он тоже умеет .res-файлы делать.


 
Ketmar ©   (2006-10-15 23:09) [13]

или примерно так:

файл myfile.rc:
SPRBMP BITMAP dizzysprz.bmp
F0409 ICON "iconz\icon_06.ico"

потом brcc32 на этот файл. получаешь myfile.res. дальше -- по мануалам. %-)


 
Albenous ©   (2006-10-15 23:13) [14]

А при помощи Delphi?


 
guav ©   (2006-10-15 23:13) [15]

> потом brcc32 на этот файл. получаешь myfile.res. дальше
> -- по мануалам. %-)

можно и проще.
File->New->Other->Dll Wizard
Project->Add to project->выбрать в комбобоксе Resource file (*.rc)->выбрать myfile.rc.
При компиляции этой dll .res файл будет создаваться автоматически


 
Albenous ©   (2006-10-15 23:15) [16]

Создаваться - да. А как в нем прописать ссылку на файл?


 
_Ламер_   (2006-10-15 23:18) [17]

А это обязательно делать программно? Тогда не проще ли свой формат выдумать?


 
Anatoly Podgoretsky ©   (2006-10-15 23:19) [18]

Albenous ©   (15.10.06 23:13) [14]
Не выполняешь пункт насчет BRCC просто подключаешь rc файл к Дельфи, дальше не твое дело.


 
Albenous ©   (2006-10-15 23:20) [19]

Мне позарез надо dll  с иконкам


 
Anatoly Podgoretsky ©   (2006-10-15 23:21) [20]

Albenous ©   (15.10.06 23:15) [16]
Где?
Когда сможешь нормально формулировать вопросы?


 
Albenous ©   (2006-10-15 23:21) [21]


> Не выполняешь пункт насчет BRCC просто подключаешь rc файл
> к Дельфи, дальше не твое дело.

по-русски, пожалуйста


 
Ketmar ©   (2006-10-15 23:22) [22]

>[19] Albenous(c) 15-Oct-2006, 23:20
>Мне позарез надо dll  с иконкам
и по религиозным причинам собрать её из командной строки нельзя. ага. тогда развлекайся дальше. разжевать подробнее, чем тебе уже разжевали -- невозможно. разве только сделать за тебя, но это уже денег стоит.


 
Anatoly Podgoretsky ©   (2006-10-15 23:22) [23]

Это мы уже поняли.


 
Ketmar ©   (2006-10-15 23:23) [24]

>[21] Albenous(c) 15-Oct-2006, 23:21
>по-русски, пожалуйста
это ты себе? здравое пожелание.


 
Albenous ©   (2006-10-15 23:23) [25]


> по религиозным причинам собрать её из командной строки нельзя.


почему?


 
Albenous ©   (2006-10-15 23:24) [26]


> Когда сможешь нормально формулировать вопросы?

что именно не понятно?


 
guav ©   (2006-10-15 23:28) [27]

> А как в нем прописать ссылку на файл?

после [15] само пропишется

{$R "myfile.res" "myfile.rc"}

и в dll попадут указанные ресурсы
можно ещё uses из той dll убрать, чтобы размер уменьшить.


 
Ketmar ©   (2006-10-15 23:31) [28]

>[25] Albenous(c) 15-Oct-2006, 23:23
>почему?
это тебе виднее, почему.


 
Percent   (2006-10-15 23:32) [29]

Мне позарез надо dll  с иконкам

Создаешь проект (меню Delphi: File - New - Other -- DLL Wizard):

library IconLib;

{$R MyIcons.res}

begin
end.


Далее:
Открываешь Image Editor из комплекта поставки Delphi (меню в Delphi: Tools - Image Editor). Создаешь новый ресурсный файл (меню в Image Editor: File - New - Resource File). Добавляешь в него иконки (меню в Image Editor: Resource - New - Icon). Рисуешь иконки. Закрываешь окошки с иконками. Сохраняешь ресурсный файл в папку с проектом (IconLib.dll).

Далее - компилируешь проект и наслаждаешься библиотекой с иконками.


 
Percent   (2006-10-15 23:33) [30]

Сохраняешь ресурсный файл в папку с проектом

...в файл MyIcons.res


 
Albenous ©   (2006-10-15 23:33) [31]


> после [15] само пропишется
>
> {$R "myfile.res" "myfile.rc"}
>
> и в dll попадут указанные ресурсы


Хм... Интересно. А если файл лежит, к примеру, на D:/files/prog/ как компилятор определит этот путь? я его ведь нигде не указывал.


 
Ketmar ©   (2006-10-15 23:34) [32]

у-у-у-у... мой моск... мой бедный, старый, больной моск... аффтар, ну выучи матчасть, а? не надо нас мучать...


 
Percent   (2006-10-15 23:35) [33]

А если файл лежит, к примеру, на D:/files/prog/ как компилятор определит этот путь? я его ведь нигде не указывал.

И не надо указывать. Тебе, видимо, нравится головой о стену стучаться. Сохрани на флешку, удали с винчестера, а флешку выкинь. Тогда точно не найдет.


 
Albenous ©   (2006-10-15 23:46) [34]


> И не надо указывать. Тебе, видимо, нравится головой о стену
> стучаться. Сохрани на флешку, удали с винчестера, а флешку
> выкинь. Тогда точно не найдет.


Похоже, меня не поняли. Я имел ввиду до компиляции. Но ладно. не надо злорадствовать, Ketmar, я похоже, разобрался. Нужно воспользоваться Image Editor`ом как и советовал Percent. Дельное предложение. Спасибо.
Я думал пути к файла вручную прописывать надо. Что ж тем мне легче.


 
Percent   (2006-10-15 23:50) [35]

Нужно воспользоваться Image Editor`ом

Ты воспользуйся, разберись, пойми что к чему. И все равно запиши то, что тебе писали про rc и компилятор ресурсов. Ибо Image Editor поддерживает далеко не все размеры и цветности иконок. Когда понадобятся True Color иконки, придется воспользоваться компилятором ресурсов. Так что, еще раз: сохрани эту ветку.


 
Ketmar ©   (2006-10-15 23:53) [36]

более того: когда захочется в ресурс запихать нечто странное, тут imagedit вообще не поможет.

зыж imagedit первым посоветовал я. хотя это и не принципиально. %-))


 
Albenous ©   (2006-10-15 23:58) [37]


> imagedit первым посоветовал я

Извиняюсь.
Вожможно я как CD-Rom - с первого прочтения не все беру.
А за советы - еще раз спасибо всем.


 
_Ламер_   (2006-10-15 23:59) [38]

Аффтар))
Жмёшь правой кнопкой мыши по rc файлу и выбираешь "открыть с помощью". Что там выбрать - уже сказали. И не надо нигде никаких путей прописывать. Если синтаксис rc файла верный, то res файл окажется в этой же директории.
А иконки лучше создавать в AWicons Pro - любой размер, любая глубина цветов.


 
Albenous ©   (2006-10-16 00:00) [39]


> Когда понадобятся True Color иконки, придется воспользоваться
> компилятором ресурсов.


Какой компилятор? А качество не потеряется?


 
Ketmar ©   (2006-10-16 00:09) [40]

>[39] Albenous(c) 16-Oct-2006, 00:00
>Какой компилятор? А качество не потеряется?
вернее будет сказать "компоновщик". ибо ему пофигу, что там в файлах лежит. он не разбирается, он кладёт что видит.



Страницы: 1 2 вся ветка

Текущий архив: 2006.11.12;
Скачать: CL | DM;

Наверх




Память: 0.56 MB
Время: 0.063 c
2-1161933177
_guest_
2006-10-27 11:12
2006.11.12
Можно ли послать сообщение компоненту не имеющему свойства Handle


15-1161746724
brother
2006-10-25 07:25
2006.11.12
Новшество на форуме...


2-1161860846
silversmith
2006-10-26 15:07
2006.11.12
Watch показывает неверные значения переменных


15-1161573936
Slider007
2006-10-23 07:25
2006.11.12
С днем рождения ! 22 октября


2-1161938208
JTAG
2006-10-27 12:36
2006.11.12
Добрый день, подскажите плз, как изменить указатель