Hi,
Wenn du deinem Kolegen eine Debug Version deines Programmes geschickt hast er aber kein DirectX9 SDK installiert hat so versucht das Programm auf Debug Funktionen von DirectX zuzugreifen.
Das gegenteil von Debug ist Retail du kanst dir Debug wie die Entwicklerversion vorstellen sie soll dir helfen Fehler in deinem Programm zu finden.
Und die Debugversion bze. Modus von DirectX ist eben nur im SDK enthalten hat dein Freund also kein DX SDK läuft das bei ihm auch nicht.
2 Möglichkeiten um das Problem zu lösen.
1.
Entweder du installierst das DirectX 9 SDK bei deinem Freund was sich in anderen Spielen negativ auf die Performance auswirken könnte denn die Debug Version ist immer langsamer als die Retail.
2.
Du kompilierst dein Programm im Retail Modus dazu musst du dein Visual C++ ( ich nehme an du verwendest das ) einstellen. Zuerst musst du die Tribase Engine auch für den Retailmodus verfügbar machen. Denn auch sie hat 2 Versionen Debug und Retail. Das eine ist die TriBase.dll und das andere die TriBaseD.dll ( Wenn mich nicht alles täuscht ) und dann musst du halt deine Entwicklungsumgebung noch anweisen die Retaileinstellungen zu verwenden. Dann erstellt er dir einen neuen Ordner in deinem Entwicklungsverzeichniss mit dem Namen Release und das läuft dann auch ohne das SDK
Hoffentlich kommste damit weiter.