hallo miteinander,
da ich mihc nun relativ lange mit einem eigenem plugin-system beschäftigt habe und auch halbwegs gut vorangekommen bin, hab ich mir gedacht, mach dir doch mal wieder deinen eigenen aufbau bewusst. dabei ist mir aufgefallen, dass ich mir im grunde genommen über einen zentralen punkt gar nciht genau im klaren bin. daxchte mir das ist mal eine gute anregung für eure herrvoragende hilfe.
mein projekt stellt ein interface bereit, dass von plugins implementiert werden muss. um sowohl unter den plugins, als auch mit der hauptanwendung daten auszutauschen macghe ich das ganze indem ich windowsbotschaften benutze.
und genau hier beginnt mein dilemma. mittels allocatehwnd() erzeuge ich für jedes plugin ein windowshandle. das geschieht nun allerdings in der
dll, welche das plugin exportiert. nun hab ich ab und zu gelesen, dass es mit der botschaftenverarbeitung in dlls probleme geben kann. jetzt also das problem:
wie genau funktioniert die nachrichtenverarbeitung (senden, empfangen...) insbesondere in dlls, die ja nicht unbedingt über eine nachrichtenverarbeitungsschleife verfügen müssen? übernimmt das die (evtl vorhandene) schleife der MainApplication? im allocatehwnd scheint ja eine hInstance benötigt zu werden. kommt die von der
Dll oder der Main? und gibt es schwierigkeiten wenn die botschaften über die MainSchleife geleitet werden und evtl daten beinhalten, auf die dann in einer anderen
dll zugegriffen wird? und der klassiker, von wo empfangen formulare und dialoge, die in dlls erzeugt werden, ihre nachrichten? sollte man vielleicht eine eigenen verarbeitungsschleife einrichten (pro
dll, aber das wäre doch dann schon fast ne komplette anwendung???)
falls ihr euch auch mal über komunikation zwischen dlls und anwendungen gedanken gemacht haben, wie habt ihr das ganze gelöst?
ich hoffe ich habe euch ncht erschlagen. wäre schön wenn sich ein paar antworten ansammeln
viele grüße!