DLL и ресурсы в DLL
Есть прекрасно работающее многофункциональное приложение. Ряд функций потребовалось использовать в других приложениях, поэтому некоторый набор был выделен в DLL, в том числе одна форма с DBGrid, DataSource и tbTable (Titan). Для таблицы требуется иметь ресурс (у меня это Account.Res).
Вот в нём вся и проблема. Если я этот ресурс включаю в DLL, то таблица его не видит и не находит, хотя судя по исходникам должна находить. Если же я его включаю в приложение, то вновь всё O'k.
Однако мне нужно ресурс иметь в DLL, поскольку приложения пишутся на разных языках, не только на BCB и не во всех языках имеется такая возможность, как подключение ресурсов.
Знаком ли кто с такими проблемами? Может подскажете как только внутри DLL можно решить данную проблему?
Цитата: viva
С наступающим Новым Годом 2007, уважаемые знатоки!
Есть прекрасно работающее многофункциональное приложение. Ряд функций потребовалось использовать в других приложениях, поэтому некоторый набор был выделен в DLL, в том числе одна форма с DBGrid, DataSource и tbTable (Titan). Для таблицы требуется иметь ресурс (у меня это Account.Res).
Вот в нём вся и проблема. Если я этот ресурс включаю в DLL, то таблица его не видит и не находит, хотя судя по исходникам должна находить. Если же я его включаю в приложение, то вновь всё O'k.
Однако мне нужно ресурс иметь в DLL, поскольку приложения пишутся на разных языках, не только на BCB и не во всех языках имеется такая возможность, как подключение ресурсов.
Знаком ли кто с такими проблемами? Может подскажете как только внутри DLL можно решить данную проблему?
Есть прекрасно работающее многофункциональное приложение. Ряд функций потребовалось использовать в других приложениях, поэтому некоторый набор был выделен в DLL, в том числе одна форма с DBGrid, DataSource и tbTable (Titan). Для таблицы требуется иметь ресурс (у меня это Account.Res).
Вот в нём вся и проблема. Если я этот ресурс включаю в DLL, то таблица его не видит и не находит, хотя судя по исходникам должна находить. Если же я его включаю в приложение, то вновь всё O'k.
Однако мне нужно ресурс иметь в DLL, поскольку приложения пишутся на разных языках, не только на BCB и не во всех языках имеется такая возможность, как подключение ресурсов.
Знаком ли кто с такими проблемами? Может подскажете как только внутри DLL можно решить данную проблему?
Значит где-то внутри компонента используется загрузка ресурса типа:
HBITMAP hbmImage = (HBITMAP)LoadImage(NULL, MAKEINTRESOURCE(IDB_SEARCH), IMAGE_BITMAP, 0, 0, LR_DEFAULTCOLOR);
пареметр NULL говорит, что нужно искать ресурс в ехе. Чтобы грузилось из dll надо указывать ее инстанс.
HBITMAP hbmImage = (HBITMAP)LoadImage(HInstance/*dll*/, MAKEINTRESOURCE(IDB_SEARCH), IMAGE_BITMAP, 0, 0, LR_DEFAULTCOLOR);
Это вопрос к Титан-у.