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

Создание DLL - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ dynamic_cast в иерархии http://www.cyberforum.ru/cpp/thread22003.html
class A { .... }; class B : public A { public: A a1; A a2;
C++ Помогите сделать ActiveX компонент Таймера на микросекунду из готовых исходников ... в ветке http://www.cyberforum.ru/cpp-beginners/thread20934.html?highlight=%F2%E0%E9%EC%E5%F0 обсуждался вопрос программирования таймера на 1 МИКРО!секунду. Ensase предложил свой вариант - http://www.cyberforum.ru/attachment.php?attachmentid=1803&d=1232008671 , за что ему большое спасибо. Вот только я начинающий и к тому же на VB... Так что может кто-нить поможет создать и выложить здесь... http://www.cyberforum.ru/cpp/thread21910.html
C++ Определители матрицы найти компактным методом исключения (метод крамера)
определители матрицы нужно найти компактным методом исключения (это как?). Коэффициенты представленны структурой компклесного числа в символьной форме. помогите решить!! И чем символьная фрма отличается от алгебраической?
Возможность Borland C++ 5.02 C++
Можно ли создать хорошою программу на Borland C++ 5.02 :help:
C++ Правильно ли реализованы операторы (в смысле логики)? http://www.cyberforum.ru/cpp/thread21540.html
mik-a-el, Отписался на форуме-теперь ответь пожалуйста)) bool operator == (complex &c) { if (re==c.re && im==c.im) return 1; return 0; }
C++ Как перегрузить функцию xcout? У меня уже мозги не варят... Пожалуйста подскажите как перегрузить функцию xcout что бы в качетве аргумента она получала указалеть на символьную строку.. точнее создать пеергруженную функцию xcout, получающую в качестве аргумента символьную строку и возращаюшую целое значение... как я понимаю надо перегрузить << для этого я написал что-то типа: #include <iostream> #include <string.h>... подробнее

Показать сообщение отдельно
alexakafranc
0 / 0 / 0
Регистрация: 09.09.2009
Сообщений: 4
29.04.2010, 13:22     Создание DLL
Всем доброго времени суток!
Среда выполнения Borland Builder
проблема в вызове метода класса зашитого в dll
//содержание dll
//main.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
27
28
29
30
31
32
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <windows.h>
#pragma hdrstop
#include "dll_lmain.h"
#include <stdio>
#pragma argsused
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
{
    return 1;
}
 
MyClass::MyClass()
{
    field =10;
}
 
bool MyClass::Message(int a,int b)
    {
      int c=  a+b;
      field = c;
     return true;
      //printf("asdds=%i",c);
    }
 
DLL_SPEC MyClass* ClassReturn()
{
    MyClass* my = new MyClass();
    return my;
}
//---------------------------------------------------------------------------
//содержание dll_main.h
C++
1
2
3
4
5
6
7
8
9
#define DLL_SPEC extern "C" __declspec(dllexport)
 
class MyClass
{
public:
    MyClass();
    int field;
    bool Message(int a,int b);
};
//Основной проект
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    MyClass* (*ClassReturn)();
    MyClass* my;
    HINSTANCE hLib = LoadLibrary("mydll.dll");
    if (hLib) {
        ClassReturn= (MyClass*(*)()) GetProcAddress(hLib, "_ClassReturn");
        if (ClassReturn)
        {
            my = ClassReturn();
            Label1->Caption = IntToStr(my->field);
            my->field =3;
            //my->Message(2,3);                          //здесь выдает ошибку             
            Label2->Caption = IntToStr(my->field);
        }
    }
    FreeLibrary(hLib);
Ошибка [Linker Error] Unresolved external 'MyClass::Message(int, int)' referenced from C:\123\DLL\UNIT1.OBJ
 
Текущее время: 12:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru