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

подключение dll - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подсчитать количество целых чисел среди чисел a, b, c http://www.cyberforum.ru/cpp-beginners/thread95261.html
Подсчитать количество целых чисел среди чисел a, b, c Как мне описать, целые они или нет?
C++ Посчитать сумму всех цифр,входящих в текст Дан текст.Посчитать сумму всех цифр,входящих в текст. Пример. Если к 12 прибавить 2,то получим 14. Результат.10 Пояснение 1+2+2+1+4=10 http://www.cyberforum.ru/cpp-beginners/thread95248.html
структура C++
описать структуру, соедржащую: фамилию знак зодиака день рождения написать программу: 1.данные в массиве программы, упорядоченные по знаку зодиака 2. вывод на экран информация о людях и их знаках зодиака 3.если таких нет то вывод сообщение
Граф C++
2. Имеется N населенных пунктов (N≤15), и сеть авиалиний, соединяющих эти города. Сеть задана матрицей связности M(N,N), где M(i,j) =0, если города i и j не связаны между собой, и M(i,j)=1 – в противном случае. Viяснить, есть ли среди N населенных пунктов изолированные города ( такие, в которые нельзя долететь).
C++ структуры и функции http://www.cyberforum.ru/cpp-beginners/thread95220.html
Для начала код: #include <iostream> #include <locale.h> using namespace std; struct phone { int number1;
C++ двумерный массив в виде матрицы у меня должна получиться матрица 1 1 1 1 0 2 2 2 0 0 3 3 0 0 0 ребя подскажите как сделать матрицу =) (в листинге полная бурда, подкоректируйте ) подробнее

Показать сообщение отдельно
stels
 Аватар для stels
2 / 1 / 0
Регистрация: 02.04.2009
Сообщений: 28

подключение dll - C++

13.02.2010, 23:29. Просмотров 1320. Ответов 4
Метки (Все метки)

Подскажите в чем проблема
Текст Prog.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
#include <windows.h>
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
 
typedef void (*cfunc)();
 
cfunc NumberList;
void main()
{
   HINSTANCE hLib=LoadLibrary("dllname.DLL");
    
    NumberList=(cfunc)GetProcAddress((HMODULE)hLib, "NumberList");
 
    if(NumberList==NULL) 
    {
       cout << "Unable to load function(s)." << endl;
       FreeLibrary((HMODULE)hLib);
       return;
    }
    NumberList();
 
    FreeLibrary((HMODULE)hLib);
    getch();
}
Текст dll.h
C++
1
2
3
4
5
#include <iostream.h>
#include <stdio.h>
#include <windows.h>
 
extern "C" __declspec(dllexport) void NumberList();
Текст dll.cpp
C++
1
2
3
4
5
6
7
#include "dll.h"
 
 
extern "C" __declspec(dllexport) void NumberList()
{
    cout<< 12;
}
При компиляции Prog.cpp выводит ошибки:
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
Debug/1.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.


Добавлено через 11 часов 13 минут
проблему решил!
но возникла другая: как загнать форму в 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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
BOOL InitApplication(HINSTANCE hInctance);
BOOL InitInctance(HINSTANCE hInstance, int nCmdShow);
LPCSTR szClassName="FrameWndAPI";
LPCSTR szTitle="aaaaaaaaaaaaaaaaa" "adssssss";
 
BOOL InitApplication (HINSTANCE hInstance)
{   typedef struct tagWNDCLASSA
    {
        UINT style;
        WNDPROC lpfnWndProc;
        int cbClsExtra;
        int cbWndExtra;
        HINSTANCE hInstance;
        HICON hIcon;
        HCURSOR hCursor;
        HBRUSH hbrBackground;
        LPCSTR lpszMenuName;
        LPCSTR lpszClassName;
    }WNDCLASS;
 
    WNDCLASS wc;
    wc.style=CS_HREDRAW|CS_VREDRAW;
    wc.lpfnWndProc=static_cast<WNDPROC>(WndProc);
    wc.cbClsExtra=0;
    wc.cbClsExtra=0;
    wc.hInstance=hInstance;
    wc.hIcon=LoadIcon(NULL, IDI_ASTERISK);
    wc.hCursor=LoadCursor(NULL, IDC_CROSS);
    wc.hbrBackground=reinterpret_cast<HBRUSH>(COLOR_WINDOW+1);
    wc.lpszMenuName=NULL;
    wc.lpszClassName=szClassName;
    return RegisterClass(&wc);   
 
    BOOL InitInstance(
                  HINSTANCE hInstance,
                  int nCmdShow);
    HWND hWnd;
    hWnd=CreateWindow(
              szClassName,
              szTitle,
              WS_OVERLAPPEDWINDOW,
              CW_USEDEFAULT,
              CW_USEDEFAULT,
              CW_USEDEFAULT,
              CW_USEDEFAULT,
              NULL,
              NULL,
              hInstance,
              NULL);
    if(!hWnd) return FALSE;
    if(!ShowWindow(hWnd,nCmdShow))return FALSE;
    if(!UpdateWindow(hWnd))return FALSE;
    return TRUE;
}
LRESULT CALLBACK WndProc(
     HWND hwnd,
     UINT message,
     WPARAM wParam,
     LPARAM lParam)
{
    switch(message)
    {
        case WM_DESTROY:    PostQuitMessage(0); break;
        default: return DefWindowProc(hwnd, message,wParam,lParam);
    }
        return 0;
}
 
int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
    if(!hPrevInstance)
    {
        if(!InitApplication(hInstance)) return FALSE;
    }
    if (!InitInstance(hInstance,nCmdShow)) return FALSE;
    MSG msg;
    while (GetMessage(&msg, NULL,0,0))// TODO: Place code here.
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
    return static_cast<int>(msg.wParam);
}
вот ошибки:
e:\lab1\1\1.cpp(37) : error C2664: 'RegisterClassA' : cannot convert parameter 1 from 'struct InitApplication::tagWNDCLASSA *' to 'const struct tagWNDCLASSA *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
e:\lab1\1\1.cpp(56) : error C2065: 'nCmdShow' : undeclared identifier
e:\lab1\1\1.cpp(83) : error C2065: 'InitInstance' : undeclared identifier

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