ich habe folgende versucht :
header File sieht so aus:
Code:
extern "C" __declspec(dllexport)double Addi(double a, double b);
// Returns a - b
extern "C" __declspec(dllexport)double Subtract(double a, double b);
// Returns a * b
extern "C" __declspec(dllexport)double Multiply(double a, double b);
// Returns a / b
// Throws const std::invalid_argument& if b is 0
extern "C" __declspec(dllexport)double Divide(double a, double b);
C.File sieht so aus:
Code:
double Addi(double a, double b)
{
return a + b;
}
double Subtract(double a, double b)
{
return a - b;
}
double Multiply(double a, double b)
{
return a * b;
}
double Divide(double a, double b)
{
if (b == 0)
{
throw invalid_argument("b cannot be zero!");
}
return a / b;
}
Daraus DLL erstellt und in Labview importiert.
Es funktioniert einwandfrei
Das ist nur zum Einstieg
aber ich möchte C++ DLL file in Labview importieren und komme einfach nihct weiter
ich habe das Beispiel von @rolfk (Dafür danke ich dir) einfach mitgenommen und wollte daraus einen DLL zu erstellen.
Header File sieht so aus:
Code:
class MyClass
{
public:
MyClass(int par);
int Methode1(int par);
int Methode2(int par1,double par2);
~MyClass(void);
};
Das Cpp File sieht so aus:
Code:
#include "StdAfx.h"
#include "MyClass.h"
MyClass::MyClass(int par)
{
// ??
}
MyClass::~MyClass(void)
{
//??
}
extern "C" __declspec(dllexport) MyClass* createMyClass(int par)
{
return new MyClass(par);
}
extern "C" __declspec(dllexport) void destroyMyClass(MyClass* ref)
{
delete ref;
}
extern "C" __declspec(dllexport) int MyClass_Methode1(MyClass* ref, int par)
{
return ref->Methode1(par);
}
extern "C" __declspec(dllexport) int MyClass_Methode2(MyClass* ref, int par1, double par2)
{
return ref->Methode2(par1, par2);
}