Форум программистов, компьютерный форум CyberForum.ru

Начальное изучение явного подключения библиотек и использования их функций - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Проблемы с инициализацией данных http://www.cyberforum.ru/cpp-beginners/thread609638.html
Сразу оговорюсь, что на форуме пишу впервые и перед тем, как писать о проблеме ознакомился с похожими темами , но именно по моей проблеме ничего вразумительного не нашёл. Поэтому, уважаемые программисты помогите решить проблему. Написал маленькую, но важную для меня программу, по вычислению таблицы значений функции. Но, всё идёт на перекос, компилируется без проблем и ошибок, а при выполнении...
C++ Ошибка в функции (strncpy) Надо прочитать файл содержащий что-то подобное: 1. Nomer reisa: 1 ves bagazha: 1.50 (kg) kolichestvo veshei: 5 2. Nomer reisa: 1 ves bagazha: 2.60 (kg) kolichestvo veshei: 55 3. Nomer reisa: 1 ves bagazha: 3.70 (kg) kolichestvo veshei: 55 4. Nomer reisa: 1 ves bagazha: 4.80 (kg) kolichestvo veshei: 5 Имеет ли место данное использование функции strncpy? Ошибку выдает на 15 строке. void... http://www.cyberforum.ru/cpp-beginners/thread609632.html
Одномерный массив В из номеров положительных элементов массива А C++
Помогите сформировать одномерный массив В из номеров положительных элементов массива А.
C++ Найти обратную матрицу методом Гауса
Всем привет. Задание следующее,есть матрица typedef GLdouble GLTDoubleMatrix; GLTDoubleMatrix tempm = {-2, 1, 3, 2, 1, 2, -1, 1, 1, -2, -1, 2, 2, 2, 1, 1}; Нужно найти обратную матрицу, я это сделал , частичный код приведен ниже. Проблема заключается в том что при умножении матрицы на обратную матрицу не получается единичная матрица....
C++ Не выполняет присвоение http://www.cyberforum.ru/cpp-beginners/thread609596.html
вопрос в комментариях. game::game(int size_team_, int begin_counter): size_team(size_team_) { srand(time(NULL)); Tunit tempunit; for(int i=0;i< this->size_team ;i++) { counter_unit.push_back(begin_counter); for(int i2=0;i2<begin_counter;i2++) {
C++ Найти ошибку(сумма элементов массива) Здравствуйте. Необходимо найти ошибку в нахождении суммы до элемента, значение которого вводится с клавиатуры, например 1 2 3 4 5 6 7 8 9 Ввожу 6 и считает 1+2+3+4+5+6 Код: #include <cstdlib> подробнее

Показать сообщение отдельно
Nightmare0
0 / 0 / 0
Регистрация: 18.06.2012
Сообщений: 4
19.06.2012, 21:29     Начальное изучение явного подключения библиотек и использования их функций
Вот код приложения, которое подключает в себя библиотеку plugin1.dll
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <Windows.h>
#include <iostream>
using namespace std;
 
typedef void (__stdcall *MYPROC)(void);
 
void main(void) {
    cout << "Load Dll..." << endl;
 
    HMODULE hLib = LoadLibrary(L"plugin1.dll"); 
    if (hLib)
    {
        cout << "Library load." << endl;
 
        MYPROC MyFunction = (MYPROC)GetProcAddress(hLib, "MyFunction"); 
        if (MyFunction) 
        {
            cout << "Function load." << endl;
 
            MyFunction(); 
        }
    }
 
    system("pause");
 
}
Код библиотеки
C++
1
2
3
4
5
6
7
8
#include <Windows.h>
#include <iostream>
 
 
extern "C" __declspec(dllexport) void MyFunction(void)
{
    std::cout << "Hi from DLL!" << std::endl;
}
Все работает прекрасно, вопрос будет в расширении функционала.

В строке
C++
1
MYPROC MyFunction = (MYPROC)GetProcAddress(hLib, "MyFunction");
мы получаем функцию "MyFunction" из явно подключаемой библиотеки.
Проблема в том что я не знаю какие функции будут в модуле, но знаю список функций в виде текста, следовательно я не могу использовать
C++
1
MyFunction();
в основной программе. Можно ли как-то эту строку изменять в зависимости от поступаемого аргумента в строке
C++
1
MYPROC MyFunction = (MYPROC)GetProcAddress(hLib, "MyFunction");
"MyFunction" ?

Буду рад любой информации касательно темы!

p.s. Допустим в модуле будет функция инициализации которая будет всегда исполняться при подключении, каким методом можно из библиотеки к примеру передать объект/массив, в общем набор внутренних функций, в основную программу? Массив ссылок на функции и т.д.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru