C++ XE4 Firemonkey DX10 deaktivieren in DLL



  • Hi Leute,

    ich hab da so ein kleines Problem, ich versuche derzeit Firemonkey dazu zu bringen DX9 zu nutzen, indem ich GlobalUseDX10 deaktiviere.
    Dazu sei noch gesagt, es geht hier um eine DLL die per LoadLibrary in einem Prozess gejagt wird.
    Mein Problem ist jetzt, das der Prozess aus unerklärlichen Gründen abstürzt wenn ich DX10 deaktiviere.
    Weiß jemand woran das liegen könnte?

    void Entrypoint(void)
    {
    	GlobalUseDX10 = false;
    	GlobalUseDX10Software = false;
    	GlobalUseHWEffects = true;
    	GlobalUseDirect2D = true;
    	GlobalDisableFocusEffect = true;
    	GlobalUseGDIPlusClearType = true;
    
    	try
    	{
    		frmMain = pFormMain(new TfrmMain(0));
    		frmMain->ShowModal();
    	} catch(Exception &e)
    	{
    		MessageBoxW(NULL, e.Message.c_str(), L"Error", NULL);
    	}
    }
    
    extern "C" int _libmain(unsigned long reason)
    {
    	if(reason == DLL_PROCESS_ATTACH)
    	{
    		boost::thread t(Entrypoint);
    		t.detach();
    	} else if(reason == DLL_PROCESS_DETACH)
    	{
    		ExitProcess(0);
    	}
    
    	return 1;
    }
    

    MfG



  • Sorry für Doppelpost.
    Wenn ich GlobalUseGPUCanvas aktiviere, funktioniert es mit DX9 einwandfrei, allerdings ist die Qualität extrem mies.
    Hat hier niemand eine Ahnung woran das Problem liegt? 😮


Anmelden zum Antworten