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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Строка в матрицу http://www.cyberforum.ru/cpp-beginners/thread520680.html
Помогите пожалуйста Есть такая задача 001100101 101100111 (по середине три пробели) нужно их перенести в двух матрицах так чтобы получить 001 100 101 и 101 100 111
C++ структуры в меню, не знаю как доделать Вот кодstruct molprod { string syr, moloko, yogurt, maslo, slivki, tvorog; }; struct vidy { string chedder, rokfor, suluguni; string klub, pers, lim; string sliv, choko, marg; string klass, zern; http://www.cyberforum.ru/cpp-beginners/thread520679.html
У меня есть курсач с готовой программой, вернее её кодом. смог бы кто саму программу сделать? C++
#include <iostream.h> #include <iomanip.h> #include <conio.h> void Kramer(double C,double D);//Prototip funkcii void main() { int i,j; double A,B; char z='y'; cout<<"\n"<<endl;
Ввод-вывод массива C++
Помогите пожалуйста решить! Нужно вывести массив nxm, размерность и элементы которой вводятся с клавиатуры. #include "stdafx.h" #include <iostream> #include<CONIO.H> #include<STDIO.H> #include <time.h> #include <stdlib.h> using namespace std; int _tmain(int argc, _TCHAR* argv)
C++ Unicode строка-константа http://www.cyberforum.ru/cpp-beginners/thread520636.html
Как задать?
C++ Сформировать массив простых чисел не больших заданного натурального числа N Сформировать массив простых чисел не больших заданного натурального числа N. подробнее

Показать сообщение отдельно
lblondy
1 / 1 / 0
Регистрация: 01.05.2011
Сообщений: 77

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

17.03.2012, 09:38. Просмотров 1582. Ответов 16
Метки (Все метки)

Помогите пожалуйста понять что не так сделала 8)))) может что-то странное в коде Program1.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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <windows.h>
#include <iostream.h>
#include <conio.h>
#pragma hdrstop
//---------------------------------------------------------------------------
//   Important note about DLL memory management when your DLL uses the
//   static version of the RunTime Library:
//
//   If your DLL exports any functions that pass String objects (or structs/
//   classes containing nested Strings) as parameter or function results,
//   you will need to add the library MEMMGR.LIB to both the DLL project and
//   any other projects that use the DLL.  You will also need to use MEMMGR.LIB
//   if any other projects which use the DLL will be performing new or delete
//   operations on any non-TObject-derived classes which are exported from the
//   DLL. Adding MEMMGR.LIB to your project will change the DLL and its calling
//   EXE's to use the BORLNDMM.DLL as their memory manager.  In these cases,
//   the file BORLNDMM.DLL should be deployed along with your DLL.
//
//   To avoid using BORLNDMM.DLL, pass string information using "char *" or
//   ShortString parameters.
//
//   If your DLL uses the dynamic version of the RTL, you do not need to
//   explicitly add MEMMGR.LIB as this will be done implicitly for you
//---------------------------------------------------------------------------
 
#pragma argsused
 
struct Node
 {
 int d;
 Node *daut;
 Node *next;
 };
 
typedef Node* root;
root tree;
 
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
{
        return 1;
}
 
extern "C"
 {
 
__declspec( dllexport ) root& AddNode(root& tree, int n)
{
 if (tree==NULL)
 {
  tree=new Node;
  tree->daut=tree->next=NULL;
  tree->d=n;
 }
 else
  if (n>=tree->d)
   tree->daut=AddNode(tree->daut,n);
  else
   tree->next=AddNode(tree->next,n);
 return tree;
}
 
 __declspec( dllexport ) Node *ReadTree(char * fname)
{
FILE *file;
int count,n;
file = fopen(fname,"r");
 if(file == NULL)
 {
 cout<<"Error! "<<GetLastError();
 getch();
 exit(1);
 }
else
{
fscanf(file, "%d", &count );
for (int i=0; i<count; i++)
{
 fscanf( file, "%d", &n );
 AddNode(tree, n);
 }
  }
fclose(file);
return tree;
}
 
__declspec( dllexport ) void WriteTree(char * fname, Node * tree)
{
 
 FILE *file;
 if (tree==NULL)
 cout<<"Tree is empty"<<endl;
 else
 {
  if (tree->next!=NULL)
    WriteTree("res.txt",tree->next);
  cout<<tree->d<<" ";
  file=fopen(fname, "a");
  fprintf(file," %d",tree->d);
  fclose(file);
  if (tree->daut!= NULL)
    WriteTree("res.txt",tree->daut);
 }
}
}
//---------------------------------------------------------------------------
Unit1.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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <iostream.h>
#include <iomanip.h>
#include <conio.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
struct Node
 {
 int d;
 Node *daut;
 Node *next;
 };
 
typedef Node* root;
root tree;
typedef Node(__cdecl * PFGETDATE)(char * fname);
typedef void (__cdecl * PFWRITEDATE)(char * fname, Node * tree);
 
 
/*Node *ReadTree(char *fname);
void WriteTree(char * fname, Node * tree);
root& AddNode(root& tree, int n); */
 
int main(int argc, char* argv[])
{
HANDLE hLibrary;
PFGETDATE pfGetDate;
PFWRITEDATE pfWriteDate;
Node dt;
hLibrary = LoadLibrary("Project1.dll");
if (!hLibrary)
{
    pfGetDate =
        (PFGETDATE)GetProcAddress(hLibrary,"*ReadTree");
 if (pfGetDate) pfGetDate("der.txt");
 pfWriteDate =
        (PFWRITEDATE)GetProcAddress(hLibrary,"WriteTree");
 if (pfWriteDate) pfWriteDate("res.txt", &dt);
  }
            FreeLibrary(hLibrary);
 getch();
 return 0;
 }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru