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

DLL for Windows - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Заполнить булевский массив goroda[100] значениями false http://www.cyberforum.ru/cpp-beginners/thread707955.html
Не соображу как это сделать !
C++ Задачник по С++ Есть ли какой нибудь большой задачник по С++. По скольку только начал изучения С++ и на других языках писать не умею, интересует начальный уровень задачь. Начиная от: Hello world! и заканчивая сложными программами. P.S. Было бы очень хорошо, если бы в задачнике так же были решения задачь. http://www.cyberforum.ru/cpp-beginners/thread707954.html
заменить условие C++
Как написать эту программу используя strtok и X=strtok(NULL," ") ?Программа должна находить короткое слово. char* min=0; char *X; X=strtok(x, " "); min=X; do { if (strlen(X)<strlen(min)) min=X; }
C++ Векторизация множественно выполняющейся операции
Задача - произвести какую либо операцию над каждым элементом массива. К примеру возьмем 2 числовых массива размерностью n каждый, заполним их и элементы второго прибавим к элементам первого, с идентичным индексом. Сделать этом можно тремя путями: 1. Последовательное сложение: a+=b; a+=b; ... 2. Через цикл while int i=0; do { a+=b; while(++i!=n);
C++ Переделать программу http://www.cyberforum.ru/cpp-beginners/thread707934.html
помогите изменить программу, программа ищет наименьший элемент последовательности, а мне надо индекс этого элемента т.е порядковой номер (начиная с нуля). вот код: #include <vcl.h> #pragma hdrstop #include "Unit1.h"
C++ Изучение C++ Изучаю язык С++ два месяца с небольшим, пока решил это делать самостоятельно, нашел на Ютубе серию уроков, каждый урок в точности стараюсь повторить без подглядываний, в принципе не так тяжело один файл, день два макс три и ты его пишеш, но вот попалась мне серия игр - тетрис, змейка, и brackout и на изучение тетриса у меня ушло полторы недели - 5 Сишных 4 Хэдерных файла. На освоение двух... подробнее

Показать сообщение отдельно
sandye51
программист С++
 Аватар для sandye51
677 / 579 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
24.11.2012, 23:31     DLL for Windows
Добрый вечер,

Делаю проект, в котором необходимо подгружать 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
27
28
29
30
31
32
33
34
35
36
    [DllImport("kernel32.dll", SetLastError = true,
        CharSet = CharSet::Unicode, ExactSpelling = true,
        CallingConvention = CallingConvention::StdCall)]
    static HMODULE LoadLibrary(LPCTSTR lpFileName);
 
    [DllImport("kernel32.dll", SetLastError = true,
        CharSet = CharSet::Unicode, ExactSpelling = true,
        CallingConvention = CallingConvention::StdCall)]
    static BOOL FreeLibrary(HMODULE hModule);
 
    [DllImport("kernel32.dll", SetLastError = true,
        CharSet = CharSet::Unicode, ExactSpelling = true,
        CallingConvention = CallingConvention::StdCall)]
    static FARPROC GetProcAddress(HMODULE hModule, LPCSTR lpProcName);
 
    typedef int (*CFunction)();
 
    int _tmain()
    {
        HMODULE pLib = LoadLibrary(TEXT("FunctionDLL.dll"));
        if(pLib != 0)
        {
            FARPROC function = GetProcAddress(pLib, "QFunction");
            if (function != 0)
                MessageBox::Show(Convert::ToString(function()));
 
            FreeLibrary(pLib);
        }
        else
        {
            MessageBox::Show(L"Error", L"Не удалось открыт DLL");
            Close();
        }
 
        return 0;
    }
Этот кусок кода сие успешно делает, но вот сама функция из длл не импортируется (ее адрес 0). Я так полагаю, что в проблема в самой длл
Вот ее код (точнее ее примитив)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#ifdef __FUNCTIONDLL__
#define __FUNCTIONDLL__
 
#ifdef FUNCTIONDLL_EXPORTS
    #define FUNCTIONDLL_API __declspec(dllexport)
#else
    #define FUNCTIONDLL_API __declspec(dllimport)
#endif
 
#ifdef __cplusplus
extern "C"
{
#endif
 
FUNCTIONDLL_API int QFunction();
 
#ifdef __cplusplus
}
#endif // __cplusplus
 
#endif // __FUNCTIONDLL__
C++
1
2
3
4
5
6
7
#include "FunctionDLL.h"
 
// Пример экспортированной функции.
int QFunction()
{
    return 42;
}
Подскажите в чем мб проблема?

Добавлено через 20 минут
ну........

Добавлено через 26 минут
!!!!!!!

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