السلام عليكم ورحمة الله وبركاته
عساكم بخير وصحة وسلامة اخواني الأعزاء
لدي مشكلة
هي اني كلما احاول انشئ مكتبة dll واستدعيها في ملف آخر ينهار البرنامج كالتالي
المكتبة فيها ملفين myd.cpp , myd.h
الملفين فيهما الاكواد التالي :
myd.cpp
int multiply(int a,int b){ return a*b;}myd.h
#ifndef MYD_H_
#define MYD_H_
#ifdef EXPORTING_DLL
extern __declspec(dllexport) int multiply(int,int) ;
#else
extern __declspec(dllimport) int multiply(int,int) ;
#endif
class Maincs
{
public:
Maincs();
int __stdcall multiply(int,int);
};
#endifالبرنامج الذي ينفذ هذه المكتبة فيه الكود التالي :
/*
* m.cpp
*
* Created on: Jun 12, 2014
* Author: ASUS
*/
#include<iostream>
#include<windows.h>
#include<string>
using namespace std;
int main()
{
HINSTANCE h = LoadLibrary("my.dll");
FARPROC functionP = GetProcAddress(HMODULE(h),"multiply");
typedef int(__stdcall * pIC)(int,int);
pIC multiply;
multiply = pIC(functionP);
int retValue = multiply(6,10);
cout << retValue;
}وكلما احاول تنفيذ البرنامج الذي يستدعي المكتبة وينفذ الدالة multiply ينهار البرنامج ولا يعمل
اين المشكلة ؟؟
ولكم جزيل الشكر