Abwendung mit DirectX betreiben wenn kein DirectX installiert



  • Ich muß glaube ich dazu etwas erklären: Ich habe eine Anwendung geschrieben (C++Builder), bei der es eine Option zur Verwendung eines Joysticks gibt. Dieser wird mit DirectX abgefragt. Nun hat es sich herausgestellt, dass das Programm auch unter NT verwendet werden soll und da läuft dann meine Anwendung natürlich nicht. Ich wollte nun das Programm so umschreiben, dass es bei Installation von DirectX dieses verwendet, sonst aber auch lauffähig ist. Als Möglichkeit habe ich die Verwendung einer DLL, die die Joystick-Funktionalität implementiert, erwogen. Nach einigem Herumprobieren zeigen sich jedoch neue Probelme, die für mich nicht absehbar zu lösen sind. Daher meine Frage: Gibt es eine andere Möglichkeit das Problem zu lösen? Also das Programm sowohl bei installiertem DirectX als auch bei Fehlen von DirectX läuffähig zu machen?
    Gruß und schöne Ostern - Michael



  • Klar, benutze einfach den mitgelieferten Code vom DX-SDK (\DirectX-SDK\Samples\C++\Misc\GetDXVer), der überprüft die Version des installierten DX - bzw. ob überhaupt eines vorhanden ist.

    HTH, 🕶



  • Ich würde einfach 2 Echsen machen.

    BTW: A_n_wendung

    Bye, TGGC \-/



  • TGGC schrieb:

    Ich würde einfach 2 Echsen machen.

    Nicht sonderlich user-friendly.

    Kommt aber auf die Zielgruppe an, die wir hier nur erraten können...



  • BTW kann auch NT 4.0 uuuuuraltes DX: http://www.ntcompatible.com/faq-2.html

    [quote=[url]"http://www.cs.hmc.edu/~tsemple/games/win95.html#nt"[/url]]What about NT?

    * Windows NT 5.0 will include complete support for the DirectX 5.0 feature set
    * Windows NT 4.0 shipped with "in-the-box" support for DirectX2 on Intel, MIPS, PowerPC, and Alpha platforms. DirectX3 is available for NT 4.0 with Service Pack 3 for Intel and Alpha platforms only.
    *
    Windows NT 3.51 has no support for DirectX.[/quote]



  • Sgt. Nukem schrieb:

    TGGC schrieb:

    Ich würde einfach 2 Echsen machen.

    Nicht sonderlich user-friendly.

    Kommt aber auf die Zielgruppe an, die wir hier nur erraten können...

    Wählt man einfach die richtige automatisch.

    Bye, TGGC \-/



  • TGGC schrieb:

    Sgt. Nukem schrieb:

    TGGC schrieb:

    Ich würde einfach 2 Echsen machen.

    Nicht sonderlich user-friendly.

    Kommt aber auf die Zielgruppe an, die wir hier nur erraten können...

    Wählt man einfach die richtige automatisch.

    Bye, TGGC \-/

    Wie dirty willst Du es noch machen?!? 🤡



  • Vielen Dank für die Vorschläge.
    Leider klappt das mit GetDXVer nicht, da das kompilierte Programm ohne die DX-DLLs erst gar nicht startet und daher die Funktion GetDXVer auch gar nicht aufgerufen werden kann - das war meine ursprüngliche Idee, hatte aber nicht weit genug gedacht.
    Die Idee mit 2 Exen ist gar nicht so schlecht, ich hoffe GetDXVer() läuft auch ohne DX-DLLs, dann könnte man ja in einem kleinen Programm testen ob DX vorhanden ist und dann die entsprechende Version des eigentlichen Programms starten.
    Michael



  • Versuch doch einfach LoadLibrary auf d3d9.dll oder so.

    @Nukem:
    Ätsch. 😎

    Bye, TGGC \-/



  • GetDXVer() geht auch nicht ohne DX-Header, aber LoadLibrary ist eine geniale Idee, danke!
    Gruß - Michael



  • Mgr schrieb:

    Vielen Dank für die Vorschläge.
    Leider klappt das mit GetDXVer nicht, da das kompilierte Programm ohne die DX-DLLs erst gar nicht startet und daher die Funktion GetDXVer auch gar nicht aufgerufen werden kann - das war meine ursprüngliche Idee, hatte aber nicht weit genug gedacht.
    Die Idee mit 2 Exen ist gar nicht so schlecht, ich hoffe GetDXVer() läuft auch ohne DX-DLLs, dann könnte man ja in einem kleinen Programm testen ob DX vorhanden ist und dann die entsprechende Version des eigentlichen Programms starten.
    Michael

    Oh ja, da hatt' ich natürlich nicht dran gedacht! 🙄 😃



  • @Nukem: Doppelätsch.

    Bye, TGGC \-/


Anmelden zum Antworten