Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Callback-verwaltung

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
The_Muh
aka Mark Aroni


Anmeldungsdatum: 11.09.2006
Beiträge: 718

BeitragVerfasst am: 15.10.2009, 20:30    Titel: Callback-verwaltung Antworten mit Zitat

Ich arbeite grade an einem plugin-manager der projekt-unabhängig funktionieren soll... als nebenprodukt (Bzw komponente) ist eine callback-verwaltung entstanden, bei der die .bi nicht modifiziert werden muss, wenn die callbacks sich ändern. Der "Anwender" muss lediglich einen type (callback_type) definieren der (nur) die dims für die callbacks enthält. danach wird eine variable dieses typs erstellt und schon kann man die richtigen subs und funktionen einfach (und lesbar) zuordnen.

Zur besseren anwendung kann dann noch ein enum definiert werden, aber das ist optional.

Achja: Callbacks die auf 0 zeigen, rufen automatisch eine fest-definierte Sub auf, anstatt einen absturz des programms auszulösen.

Source gibts hier:
secure_callback.bi
test_secure_callback.bas

Ich hoffe das ist einigermaßen brauchbar...

mfg The_Muh

p.s.: kann auch mit funktionen umgehen!
_________________
// nicht mehr aktiv //
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
The_Muh
aka Mark Aroni


Anmeldungsdatum: 11.09.2006
Beiträge: 718

BeitragVerfasst am: 27.11.2009, 01:05    Titel: Antworten mit Zitat

Hab nen bisschen weiter dran gewerkelt, ergebnis hier:

http://mln.ath.cx:3001/code?id=27
_________________
// nicht mehr aktiv //
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 27.11.2009, 08:20    Titel: Antworten mit Zitat

Bisschen OT, aber ich dachte, ich hätte es schon mal gepostet... Wenn man seine Ausgabetexte auf Englisch verfasst, sollte man auch die Terminologie beherrschen... Zero pointer gibt's nicht, das heißt Null Pointer. Zunge rausstrecken
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
volta



Anmeldungsdatum: 04.05.2005
Beiträge: 1876
Wohnort: D59192

BeitragVerfasst am: 27.11.2009, 11:33    Titel: Antworten mit Zitat

http://lwn.net/Articles/342558/ hat Folgendes geschrieben:
A zero pointer is not a null pointer

_________________
Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
The_Muh
aka Mark Aroni


Anmeldungsdatum: 11.09.2006
Beiträge: 718

BeitragVerfasst am: 27.11.2009, 13:56    Titel: Antworten mit Zitat

Wie die dinger die in meiner "lib" nun genau heißen is mir eig. wurst... ich will damit nur verhindern das nen Programm abstürzt, obwohls das eigentlich nicht soll (fehler im Plugin, ungeplantes / frühzeitiges entladen eines Plugins oder schlichtweg ein fehler beim setzen der callback)...
Wenn ihr das ding benutzt dürft ihr den String der nen NULL-/Zero-/weiß-der-geier-was-pointer anzeigt gern ändern (siehe lizenz).

mfg
Muh

achja: is das überhaupt brauchbar?
_________________
// nicht mehr aktiv //
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 27.11.2009, 17:32    Titel: Antworten mit Zitat

Für mich zumindest nicht, bei CEXP habe ich meine eigene Pluginschnittstelle und bis jetzt habe ich noch nie sonst eine Pluginschnittstelle benötigt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 27.11.2009, 17:33    Titel: Antworten mit Zitat

Kommt natürlich ganz aufs Programm an. Ich hab mir die Schnittstelle nicht agneschaut, aber generell ist so ein Projekt doch lobenswert, da es viele Programme gibt, bei denen Plugins eine tolle Sache sind und so wird einem gleich die Arbeit dafür abegenommen. grinsen
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
The_Muh
aka Mark Aroni


Anmeldungsdatum: 11.09.2006
Beiträge: 718

BeitragVerfasst am: 28.11.2009, 17:19    Titel: Antworten mit Zitat

Ich werd demnächst noch 3 funktionen schreiben mit denen man per pfad-angabe die plugins laden, entladen und re-laden kann... ob und wie das funzen wird muss ich mir aber erst noch ausdenken.
_________________
// nicht mehr aktiv //
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz