innerhalb von Proceduren lassen sich Macros wunderbar definieren.
Wird aber eine Procedure in eine DLL geschrieben, lassen sich diese Macros nicht benutzen.
Die 'ProcedureDLL MyFunction()' und das 'Macro XCase' sind die Beispiele aus der Hilfe...
Code: Alles auswählen
; Einzelnes Programm
Procedure MyFunction()
MessageRequester("Hallo", "Dies ist eine PureBasic DLL !", 0)
Macro XCase(Type, Text)
Type#Case(Text)
EndMacro
EndProcedure
CallFunction(0, "MyFunction")
Debug XCase(U, "Hello")
Debug XCase(L, "Hello")
Code: Alles auswählen
; Nur für die Erzeugung der DLL
ProcedureDLL MyFunction()
MessageRequester("Hallo", "Dies ist eine PureBasic DLL !", 0)
Macro XCase(Type, Text)
Type#Case(Text)
EndMacro
EndProcedure
Code: Alles auswählen
; Das aufrufende Programm
If OpenLibrary(0, "MyFunction.dll")
CallFunction(0, "MyFunction")
Debug XCase(U, "Hello")
Debug XCase(L, "Hello")
CloseLibrary(0)
EndIf
Gibt es eine Lösung, um Macros in DLL's unterzubringen?
Blitzer