как в lib засунуть диалоговое окно (VS)
От: ili Россия  
Дата: 14.12.05 12:48
Оценка:

использую VS2005

нужно:
диалоговое окно засунуть в lib после чего линкуя либ вызывать окно

сделал следующим образом:
сначала реализовал окошко, потом всякую дребдень (заголовки, тексты, ресурсы) запихнул в пустой проект и собрал его как lib.
заголовок от класса диалога пихнул в новый проект, добавил доп зависимость, все слинковалось, правда выдало три ворнинга:


LINK : warning LNK4098: defaultlib 'mfc80.lib' conflicts with use of other libs; use /NODEFAULTLIB:library
LINK : warning LNK4098: defaultlib 'mfcs80.lib' conflicts with use of other libs; use /NODEFAULTLIB:library
LINK : warning LNK4098: defaultlib 'msvcrt.lib' conflicts with use of other libs; use /NODEFAULTLIB:library


(пробовал сделать как посоветовано в ворнинге, вылезла тьма-тьмущая ошибок)

но на


CUpdateDialog cDlg(NULL, 1, "asfsegfsdfgsd");
cDlg.DoModal();


ничего не происходит, окошко не появляется, ошибки не вылазят.

DoModal() возвращает -1, GetLastError() возвращает 1812 (ERROR_RESOURCE_DATA_NOT_FOUND The specified image file did not contain a resource section.) (ерунда какая-то, картинок на окошке вообще нет...)

возможно не указал какие-нибудь ключи экспорта/импорта... или еще что

14.12.05 19:02: Перенесено модератором из 'C/C++' — Кодт
Re: как в lib засунуть диалоговое окно (VS)
От: ekamaloff Великобритания  
Дата: 14.12.05 12:50
Оценка:
Здравствуйте, ili, Вы писали:

ili>DoModal() возвращает -1, GetLastError() возвращает 1812 (ERROR_RESOURCE_DATA_NOT_FOUND The specified image file did not contain a resource section.) (ерунда какая-то, картинок на окошке вообще нет...)


image file — твой exe-шник
It is always bad to give advices, but you will be never forgiven for a good one.
Oscar Wilde
Re[2]: как в lib засунуть диалоговое окно (VS)
От: ili Россия  
Дата: 14.12.05 13:09
Оценка:
Здравствуйте, ekamaloff, Вы писали:

E>image file — твой exe-шник


о как! =)) буду знать =))

------------->8-----------
вобщем выяснил, что нехватало res файла
можно ресурс подключить анналогично либке:

#pragma comment(lib, "lib.lib") ?
Re[3]: как в lib засунуть диалоговое окно (VS)
От: BlackHeretic Израиль  
Дата: 14.12.05 16:51
Оценка:
Нельзя. Придется бинарный вид ресурса диалога прописать в коде и создавать диалог через


HWND CreateDialogIndirect(          
    HINSTANCE hInstance,
    LPCDLGTEMPLATE lpTemplate,
    HWND hWndParent,
    DLGPROC lpDialogFunc
);
ICQ 156156278
Re: как в lib засунуть диалоговое окно (VS)
От: Went  
Дата: 15.12.05 14:07
Оценка:
Здравствуйте, ili.

Я бы посоветовал Вам всесто либы использовать DLL. Ресурсы (а, я так понимаю, Вам потроебуются не только диалоги, но и иконки, и проч.) пихать в статические библиотеки нехорошо.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.