![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Visual C++ 6.0: Вопрос по DLL... |
|
Visual C++ 6.0: Вопрос по DLL...
|
DANTIST
Сообщения: n/a |
Нужно сделать программу, которая будет искать в определенной директории все DLL-ки и
выводить их список. А потом загружать выбранную. В этих DLL должны быть маленькие игры. При компиляции главной программы не известно сколько будет этих DLL и какие у них будут имена. Реально ли вообще загрузить функцию(класс) из DLL, о которой при компиляции ничего не известно? Все эти DLL например могут экспортировать одну функцию, которая будет рисовать окно игры. Можно ли сделать тоже самое, только с MFC. То есть, чтобы не вручную рисовать окно, а создавать с использованием компонентов и классов MFC? |
|
Отправлено: 20:28, 20-06-2003 |
Модер Сообщения: 1716
|
Профиль | Сайт | Отправить PM | Цитировать DANTIST
Цитата:
Функцию обычно выполняют. Описание класса обычно используют для создания его экземпляров. В любом случае, если известен прототип, по которому будет происходить поиск файлов/функций/классов, можно задекларировать это еще до написания первой такой DLL. Например: p = GetProcAddress(hDll, 'MySuperPuperFunction'); PMYSUPERPUPERPROTOTYPE(p)(param1, param2,param3,...); Это если не хочется с интерфейсами связываться и аналогичными решениями. |
|
------- Отправлено: 19:17, 21-06-2003 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
DANTIST
Сообщения: n/a |
Делаю так...
- В DLL пишу: __declspec(dllexport) void MyMessage(void) { MessageBox(NULL, "This Message from DLL!", "!!!", MB_OK); } - В главной программе пишу: __declspec(dllimport) void MyMessage(void); HINSTANCE hDll; FARPROC MyProcAddr; if (( hDll = LoadLibrary("MyDll.dll" ![]() { MyProcAddr = GetProcAddress(hDll, "MyMessage" ![]() if (MyProcAddr != NULL) (MyProcAddr)(); else MessageBox(NULL, "MyMessage address not given!", "Error!", MB_OK); } else { MessageBox(NULL, "MyDll.dll not found!", "Error!", MB_OK); } FreeLibrary(hDll); Что не так? Почему не определяется адрес функции? P.S. Я не подключал .lib файл. |
Отправлено: 02:44, 22-06-2003 | #3 |
Модер Сообщения: 1716
|
Профиль | Сайт | Отправить PM | Цитировать DANTIST
Скорее всего некорректно собираешь MyDll.dll. Depends-ом погляди, что и как там экспортируется из нее в итоге. Если будут лишние сивмолы в имени - поищи mangling на rsdn.ru |
------- Отправлено: 13:56, 22-06-2003 | #4 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
.NET - Вопрос по Visual Basic Script и обсуждение. | S1stem | Программирование и базы данных | 3 | 15-04-2009 02:55 | |
Разное - [решено] dwmapi.dll; mpr.dll; shlwapi.dll | Reset5 | Microsoft Windows 2000/XP | 2 | 14-06-2008 16:31 | |
Вопрос по Visual Basic.Net | MrX | Программирование и базы данных | 4 | 01-08-2004 10:45 | |
Вопрос по Visual C++ | Andryxa | Программирование и базы данных | 2 | 24-11-2003 00:05 | |
Visual Studio6.0 Visual FoxPro не могу найти меню Database | Serg170580 | Программирование и базы данных | 1 | 07-04-2003 23:17 |
|