Laden...

Delegaten Dynamisch auf eine Methode mappen

Erstellt von userid11997 vor 13 Jahren Letzter Beitrag vor 13 Jahren 1.762 Views
U
userid11997 Themenstarter:in
400 Beiträge seit 2008
vor 13 Jahren
Delegaten Dynamisch auf eine Methode mappen

Moin,

ich habe eine Klasse mit etwa 1900 Delegaten , diese werden Dynamisch zur Laufzeit an Systempointer gebunden. Nun möchte ich in einer anderen (statischen) Klasse die Methoden auf meine Delegaten binden. Meine Frage , kann ich das , dass ich dann zur Laufzeit die Methoden einfach aufrufen kann und der delegate wird ausgeführt?

Falls nein: welche anderen möglichkeiten habe ich , ausser für alle 1900 delegaten eine Methode zu definieren?

Gelöschter Account
vor 13 Jahren

Ein Delegate ist erstmal nichts anders als eine Methodensignatur. Daher frage ich mich, was du mit diesem Statement versuchst zu sagen:

diese werden Dynamisch zur Laufzeit an Systempointer gebunden

1.044 Beiträge seit 2008
vor 13 Jahren

Hallo Pria,

meinst du so was wie die CreateDelegate-Methode? Du könntest dann noch eine Liste von Delegates verwenden, die du dann zur Laufzeit zusammensetzt. Das könnte man dann via Reflection machen.

zero_x

F
240 Beiträge seit 2006
vor 13 Jahren

ich habe eine Klasse mit etwa 1900 Delegaten , diese werden Dynamisch zur Laufzeit an Systempointer gebunden. Nun möchte ich in einer anderen (statischen) Klasse die Methoden auf meine Delegaten binden. Meine Frage , kann ich das , dass ich dann zur Laufzeit die Methoden einfach aufrufen kann und der delegate wird ausgeführt?

Also irgendwie riecht das tierisch. Magst du vl weiter drauf eingehen, was du überhaupt vorhast?

U
userid11997 Themenstarter:in
400 Beiträge seit 2008
vor 13 Jahren

ist im grunde ganz einfach , ich lade alle verfügbaren extensions von meinem OpenGL-Treiber auf die entsprechenden Delegate-Abbildungen über das Handle mit glGetProcAddress und Marshal.GetDelegateForFunctionPointer

Ich will die delegaten aber nicht verwenden müssen , sondern die methoden , die ich bereits in der statischen Kernklasse definiert habe.

1.361 Beiträge seit 2007
vor 13 Jahren

Hi,

schreib dir doch ein Programm, was eine C#-Datei aus der open-GL-Library generiert, die intern eben zahllose PInvoke's per DllImport hat.
Kannst ja auch in visual studio als T4-Template ablegen, dann bleibst du "on-the-fly" aktuell.

beste Grüße
zommi

5.941 Beiträge seit 2005
vor 13 Jahren

Salute Pria

Wenn ich das richtig verstehe, schaut die Antwort von zommi am brauchbarsten für dich aus.

Gruss Peter

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011