Probleme mit pointer und Datenübergabe an dll´s
-
Ich habe in einem Programm folgendes Konstrukt
void WriteFileHeader(FILE *fp,char *comment) { fprintf(fp,comment); } .... FILE *fp; fp=fopen("file.fil","wb"); WriteFileHeader(fp,"test text"); .....
Diese Konstruct arbeitet einwandfrei wenn sich die Funktion im aktuellen File, in einem anderen File des aktuellen Projekts oder einer statischen Libary befindet.
Wird diese Funktion in eine DLL ausgelagert so ist in der Funktion fp nicht/falsch initialisiert und führt immer zu einem NULL Pointer Fehler.
Das Auslagern von anderen Funktionen funktioniert einwandfrei. Ich habe schon mehrere funktionsfähige DLL´s erstellt. Da ich im Moment nicht von einem
silly/Anfängerfehler
mehr ausgehe würde ich mich über Hilfe freuen.
Um das Problem zu schildern ist an allen Stellen das zugehörige Fehlerhandling entfernt worden. Nach fopen ist fp ein korrekter filepointer.