Hallo Leute,
Ein Freund hilft mit bei einer kleinen Spielerei, wozu ich gern eine .dll verwenden möchte.
Er hat den code so weit fertig, ob er tut, was er soll ist noch etwas unklar. Aber er lässt sich gar nicht kompilieren, da soll ein fehler bei der deklaration versteckt sein. Mehr verrät der Compiler nicht.
Kann mal jemand eine Blick darauf werfen?
Der DLL sollen die Pointer von drei Arrays übergeben werden, die Größe der arrays und ein Faktor der in jedem Durchlauf den Wert 0 bis 100 enthalten kann. Die ersten beiden Arrays sollen nur gelesen werden, das dritte soll verändert werden.
Gruß Rainer
[21:52:25] Stief: ----------------------------------------------------------
[21:52:26] Stief: //---------------------------------------------------------------------------
#include
#include
#pragma hdrstop
#if defined(\_MSC\_VER)
#include
#define DLL\_export extern "C" \_\_declspec(dllexport)
#else
#define DLL\_export
#endif
//---------------------------------------------------------------------------
// 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
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void\* lpReserved)
{
DLL\_export void Sub\_Schleife (long\* PT1, long\* PT2, long\* PTReturn, long Cnt, int Faktor)
{
unsigned char Pic1;
unsigned char Pic2;
unsigned char PicReturn;
Pic1 = new unsigned char [Cnt];
Pic2 = new unsigned char [Cnt];
PicReturn = new unsigned char [Cnt];
Pic1 = \*PT1;
Pic2 = \*PT2;
for(long i = 1; i