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

Как подключить пользовательскую DLL к приложению - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Не находит пробелы при считывании http://www.cyberforum.ru/cpp-beginners/thread680771.html
ifstream file_i("text.txt"); for(int j = 0; j < 32; j++){ file_i >> CH; } Дан файл text.txt с тексомт например "ля ля бла", посимвольно я его записываю в массив символов CH, но дело в том что при попытке вывести массив он не отображает пробел, то есть получается "лялябла" Как это можно исправить?
C++ После первой буквы каждого слова вставить символ “-” После первой буквы каждого слова вставить символ “-”. Нужно в С++ http://www.cyberforum.ru/cpp-beginners/thread680767.html
Хеш таблица C++
Скажите, в чём польза от хеш-таблицы? Только в скорости поиска?
AES. Расшифровка C++
Допустим, у меня есть такие функции AES. /* алгоритм AES-256 размер блока - 128 бит размер ключа - 128 бит реализовано только шифрование (его вполне достаточно для режима CTR) */ #define AES_KEY_SIZE 16 #define AES_BLOCK_SIZE 16 #define AES_ROUNDS 14
C++ Ожидание файла (постоянное) http://www.cyberforum.ru/cpp-beginners/thread680736.html
есть пустая папка, как только в папку ложится(попадает) файл, программа должна начать его обработку. Обработка написана, а как сделать ожидание файла в папке, и как узнать скопировался он полностью в папку или ещё не полностью.
C++ Сортировка слов по алфавиту слова из файла с пробелами я считал, теперь надо отсортировать в алфавитном порядке (сравнить каждое с каждым словом от пробела до пробела) и с записать в столбик... Как реализовать вообще непонимаю =( подробнее

Показать сообщение отдельно
KatyPet
4 / 4 / 0
Регистрация: 26.10.2012
Сообщений: 16
27.10.2012, 21:37  [ТС]     Как подключить пользовательскую DLL к приложению
Попробовала применить совет ValeryS. Теперь DLL выглядит так:
My.h:
C++
1
2
3
4
5
class MyClass
{
public:
    static __declspec(dllexport) void hw(void);
};
MyDll.cpp:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<iostream>
#include "My.h"
#include<windows.h>
using namespace std;
HINSTANCE hInstance=NULL;
void MyClass::hw(void) {cout<<"HelloWorld";}
bool _stdcall DllMain(HINSTANCE hInst, DWORD Reason, LPVOID reserved)
{
    if(Reason==DLL_PROCESS_ATTACH)
    {
        hInstance=hInst;
        return true;
    }
}
,
Программа, использующая DLL:
My.h такое же, а UsesDll.cpp:
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 "stdafx.h"
#include "My.h"
#include<iostream>
#include<conio.h>
#include<windows.h>
void ( __cdecl *hw)(void);
HMODULE hLib;
int main()
{
    if(!(hLib=LoadLibrary(_T("MyDll.dll"))))
    {
        std::cout<<"LoadLibrary doesn't work\n";
        getch();
        return 0;
    }
    if(!((FARPROC &)hw=GetProcAddress(hLib, "hw")))
    {
        std::cout<<"GetProcAddress doesn't work\n";
        getch();
        return 0;
    }
    hw();
    std::cout<<"Dll used\n";
    getch();
    return 0;
}
LoadLibrary уже работает.
Выдает, что не работает GetProcAddress.


Попробовала скомпилировать проект, который прислал Игорь. Почему-то появляется ошибка при компиляции error C2491: 'MyFunc' : definition of dllimport function not allowed, это в dllmain.cpp.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru