Problem mit Arrary aus DLL

fabian24

Mitglied
Hallo Allerseits!
Bin fast am verzfeifeln! Wie kann so etwas kann so passieren:

Code:
//-----DLL.cpp-----
extern "C" __declspec(dllexport) AnsiString __stdcall GetRightName(int Index, AnsiString Klasse)
{
AnsiString MenuBearbeiten[6]={"Bearbeiten","Berechnen","Aktuelle Anlage speichern","Aktuelle Anlage löschen","Alle Anlagen löschen","Zur Zeichnung Wechseln"};
return MenuBearbeiten[Index];
}

Code:
//-----Projekt1.cpp-----
void __fastcall TForm1::FormCreate(TObject *Sender)
{
HINSTANCE instance;
	 GetRightName = (AnsiString(*)(int, AnsiString))GetProcAddress(instance=LoadLibrary("Project1.dll"),"GetRightName");
		 Edit1->Text=GetRightName(0,"Menu-Datei");
		 Edit2->Text=GetRightName(1,"Menu-Datei");
		 Edit3->Text=GetRightName(2,"Menu-Datei");
		 Edit4->Text=GetRightName(3,"Menu-Datei");
		FreeLibrary(instance);
}

Bis jetzt läuft ja noch alles, aber wenn ich in die Projekt1.cpp so erweitere:
Code:
		 Edit4->Text=GetRightName(3,"Menu-Datei"); 
		 Edit5->Text=GetRightName(4,"Menu-Datei");
		FreeLibrary(instance);
Kommt die Meldung "access violation at 0x421648: read of address 0xffffffc"
Und ich weiß nicht warum!
Bitte helft mir!
Danke im Voraus!
 
Zurück