![]() |
|
|
![]()
|
|
| NiJazz |
|
|||
![]() Jazz coder ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2286 Регистрация: 10.8.2003 Где: Москва Репутация: 2 Всего: 23 |
Например, есть два MFC-приложения. В одном из них есть String Table со строками и идентификаторами. Как можно строки этого ресурса использовать в другом проекте?
Добавлено @ 10:13 Ну разумеется, что второй проект поддерживает MFC и всё необходимое. |
|||
|
||||
| Coocky |
|
|||
![]() GUI гуру ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2879 Регистрация: 16.2.2004 Где: Украина. Запорожь е Репутация: 25 Всего: 62 |
NiJazz
Да никак, сорей всего, как ты к таблице другой достучишься? Или я не понял вопрос-тебе перенести в свою надо или работать с чужой?? -------------------- Верю в смерть после жизни, в любовь после секса ,в крем после бритья |
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 4 Всего: 44 |
все просто) см. пример
поясняю: у тебя есть пирложение и допустим ты знаешь идентификаторы строк(те у тебя есть resource.h), ну а осьтальное думаю все понятно |
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 4 Всего: 44 |
но это только при знании идентификаторов ресурсов
|
|||
|
||||
| Coocky |
|
|||
![]() GUI гуру ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2879 Регистрация: 16.2.2004 Где: Украина. Запорожь е Репутация: 25 Всего: 62 |
chaos
А ну-ка обьясни, что ты делаешь-загружаешь таблицу и читаешь из нее строки? Хм... Надо справочник по API функциям купить -------------------- Верю в смерть после жизни, в любовь после секса ,в крем после бритья |
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 4 Всего: 44 |
сдесь я делаю: зная какие есть идентификаторы строк в программе(имею resource.h ее) я загружаю строки по их идентификатору. так! но может это не то что нужно автору топика
|
|||
|
||||
| Coocky |
|
|||
![]() GUI гуру ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2879 Регистрация: 16.2.2004 Где: Украина. Запорожь е Репутация: 25 Всего: 62 |
chaos
Я вообще не пойму, зачем такое, если можно просто скопи-пастить в свою таблицу.. Ну ладно, если прийдет. пусть скажет.. А пример вообще интересный. -------------------- Верю в смерть после жизни, в любовь после секса ,в крем после бритья |
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 4 Всего: 44 |
а вдруг у кого-то есть exe и resource.h и больше ни чего, тогда таким макаром можно дергать строчки |
|||
|
||||
| NiJazz |
|
|||
![]() Jazz coder ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2286 Регистрация: 10.8.2003 Где: Москва Репутация: 2 Всего: 23 |
Coocky
Можно, но нетехнологично. Добавлено @ 17:23 chaos Спасибо, я думаю, что метод работающий. То есть берем бинарник, извлекаем нужный ресурс и пользуемся им. Но мне бы хотелось пользоваться строками из rc-файла, а не скомпонованного бинарника, так как эти два проекта в одном решении. А сидеть и копировать таблицу я бы не хотел, к тому же так могут быть ошибки (так как работа копипастера слишком машинальная). |
|||
|
||||
| Coocky |
|
|||
![]() GUI гуру ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2879 Регистрация: 16.2.2004 Где: Украина. Запорожь е Репутация: 25 Всего: 62 |
NiJazz
Ну, дык , работает пример chaos_а? Добавлено @ 17:25 Дык прочитать можно-то файл?
Вот из rc файла строка из таблицы... -------------------- Верю в смерть после жизни, в любовь после секса ,в крем после бритья |
|||
|
||||
| Earnest |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Все правильно, метод точно работает. Только грузить библиотеку\exe надо через LoadLibraryEx с флагом DONT_RESOLVE_DLL_REFERENCES или LOAD_LIBRARY_AS_DATAFILE. Иначе она попробует разрешить все свои связи, а оно вам надо? Может и не получиться. Список ресурсов потом можно получить через разнообразные функции EnumResourseXXX, а конкретный ресурс - через LoadString, LoadIcon, etc.
Если два проекта (EXE) разделяют ресурсы - самое разумное вынести эти ресурсы в отдельную DLL и подключить ее к обоим проектам. Если общие ресурсы засунуть в MFC-extension DLL, то MFC приложение и само все найдет, нужно только позаботиться о разделении пулов идентитфикаторов. Потому как код MFC, например CWinApp::LoadString, ищет сначала нужный ресурс в заданном модуле (по-умолчанию - exe модуль), а потом по всей цепочке extension DLL. У кого первого найдет, того и тапки. -------------------- ... |
||||
|
|||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 4 Всего: 44 |
сдесь вот тоже чето подобное обсуждается
http://forum.vingrad.ru/index.php?showtopi...ad=#entry477039 |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |