|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.02.2013, 02:08 | #1 |
Пользователь
Регистрация: 28.03.2012
Сообщений: 15
|
Работа с DLL библиотеками
Здравствуйте. Помогите, пожалуйста, переделать программу.
Определите следующие функции для работы с массивом: 1) int GetValue(Pairs* p, char* name, int* var); // получить значение для заданного имени (функция должна возвратить 0 если нет такого имени и 1 в случае успеха, а значение возвращать через второй параметр функции); 2) void SetValue(Pairs* p, char* name, int value); // установить значение для заданного имени (если такого имени в массиве нет, то добавить в массив новую пару); 3) void PrintPairs(Pairs* p); – вывод всех пар на экран. Код:
2) Создать новый проект для демонстрации работы с DLL и функциями; 3) В первом варианте программы необходимо использовать динамическое связывание без импорта, во втором – статическое связывание с импортом; 4) при динамическом связывании необходимо в проекте с главной программой объявить указатели на функции, содержащиеся в DLL (см. пример решения ниже); 4) при статическом связывании необходимо создать специальный заголовочный файл с объявлениями функций (см. пример решения ниже); Примеры решения: 1) Динамическое связывание: Файл MyDate.cpp Код:
Код:
Заголовочный файл MyTime.h Код:
Код:
Последний раз редактировалось Dark Illusion; 22.02.2013 в 02:14. |
25.02.2013, 08:24 | #2 |
Пользователь
Регистрация: 20.10.2011
Сообщений: 44
|
все связывается 2 проекта делаешь в одном оин для .dll, другой для екзешника, инклюдишь в запускающий .h Dllки , только надо, чтоб .dll при компиляции образовался с екзешником в одной папке, в свойствах проекта -> debug -> workspace->и указываешь где .dll у тебя скомпилировалась.
Код:
когда скомпилируешь dll и будишь писать вызывающую программу (это код из твоей функции main) при вызове этих функций не будет появляться ошибок кода да, забыл при динамическом связывании еще надо добавить Reference в свойствах проекта , когда dll уже есть в том же проекте, для запускающей программы делаешь на нее ссылку (add reference) там вторая строчка в окне нажми и е сли визуалстудия то она ее сама увидит. Все. Последний раз редактировалось bambarbia; 25.02.2013 в 08:34. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
работа с Библиотеками windows в C# | D][mon | C# (си шарп) | 1 | 02.06.2012 14:34 |
работа с библиотеками dll(delphi) | Hitory | Помощь студентам | 0 | 10.03.2012 13:35 |
Стандартные средства для работы с динамическими библиотеками(dll,so) | Пепел Феникса | Общие вопросы C/C++ | 3 | 20.08.2011 13:11 |
Работа с dll библиотеками в С# | kloffelin | Помощь студентам | 6 | 27.09.2010 23:14 |
работа с библиотеками | kuzmich | Общие вопросы Delphi | 2 | 25.02.2009 19:39 |