DirectX und Usercontrols
-
Hallo!
Ich mache gerade meine ersten Schritte mit DirectX und versuche ein Beispiel in ein eigenes Usercontrol zu übertragen und es wird beim Initialisieren des Device-Objektes eine Exception mit folgender Info:
Die DLL "C:\WINDOWS\assembly\GAC\Microsoft.DirectX\1.0.2902.0__31bf3856ad364e35\Microsoft.DirectX.dll" unternimmt einen Versuch, innerhalb der Sperre für den OS-Loader eine verwaltete Ausführung durchzuführen. Versuchen Sie nicht, verwalteten Code innerhalb einer DllMain- oder Bildinitialisierungsfunktion auszuführen, da dies ein Hängen der Anwendung zur Folge haben kann.
Eigenartigerweise funktioniert die Initialisierung, wenn das Device ein Member einer Form ist und DirectX in die Form zeichnet.
Was mache ich falsch?
-
DirectX versteht ja sowieso keiner ... da kriegst auch keine Antwort *hihi*
-
Ist ein bekannter MDX bug, kannste ignoriere (ich hab das häcken bei LoaderLock thrown ganz weg machte weils nach ner Zeit lästig wird).
-
Jedoch, wo befindet sich das Häckchen "LoaderLock thrown" ... trotzdem vielen dank für den Hinweis! Da habe ich schon mal was, nach dem ich mich richten kann
-
Bei VC# 2005:
Debug->Ecxeptions->Managed Debugging Assistants->LoaderLock
Bei 2003: keine Ahnung
-
OK, die Sache funktioniert nun! Vielen Dank erst mal.
Jedoch ist ein erneutes Problem aufgetaucht. Wenn ich nämlich die OnPaint-Methode überschreibe, ich will ja, daß das Control stets neu gezeichnet wird, wird diese offensichtlich auch im Designmodus aufgerufen, wenn ich das Control in eine Forms eingebaut habe.
Wie kann man diesen Fehler beseitigen? Jemand Ideen?
-
Hat irgendjemand Ideen, wie der Fehler im Designmodus des V-Studios behoben werden kann?
Nochmal: Wenn ich in der OnPaint-Methode ein device-Objekt anspreche, dann wird im Designer des V-Studios eine Exception geworfen!
Ziemlich unangenehmer Effekt!