Ich habe vor ein kleines Pluginsystem zu schreiben. Habe mir ein kleines Programm geschrieben das mir Youtube-Videos läd und dann mit ffmpeg in mp3s umwandelt. Da ich jetzt noch andere Cliphoster hinzufügen will dachte ich an die Pluginlösung in Form vom DLL's.
Ich habe jetzt zu dem Thema 2 Fragen.
1. Ich kann in Structuren keine Pointer verwenden. Denn
Code: Alles auswählen
Structure Event
*Pointer
a.i
b.i
EndStructure
Event.Event
Event\*Pointer = @Fiktivefunktion()
2. Ich habe mal ein wenig mit DLL's herumgespielt. Mal ein kleines Bsp:
Code: Alles auswählen
;---- DLL
Structure Event
Pointer.i
a.i
b.i
EndStructure
Procedure RegisterEvent()
MessageRequester("LOL?","hello, from DLL ;)",0)
EndProcedure
ProcedureDLL Reg(*in.Event)
*in\Pointer.i = @RegisterEvent()
*in\a.i = 123
*in\b.i = 456
EndProcedure
Code: Alles auswählen
;----EXE
Structure Event
Pointer.i
a.i
b.i
EndStructure
Event.Event
If OpenLibrary(0, "asd.dll")
*Regev = GetFunction(0, "Reg")
If *Regev
CallFunctionFast(*Regev, @Event)
EndIf
;Debug Event\Pointer.i
CallFunctionFast(Event\Pointer.i)
CloseLibrary(0)
EndIf

Schonmal danke für die Hilfe
Grüße Marv