2010-12-02 18 views
0

Ich habe versucht, DirectDraw in der letzten Woche auf einem CE5.0-Framework zu funktionieren, und ich stoße auf einige sehr seltsame Probleme.'LNK2019 ungelöstes externes Symbol' auf DirectDrawCreate auflösen

ddrval = DirectDrawCreate(NULL, &lpDD, NULL); 

Wenn ich diese Funktion in meinem Code habe, bekomme ich "error LNK2019: unresolved external symbol _DirectDrawCreate referenced in function "bool __cdecl DirectDrawInit(struct HWND__ *)" ([email protected]@[email protected]@@Z)"

Die Funktion selbst in der .h vorhanden ist, wie ich direkt angesprungen werden kann, was ich mache denke ich eine Bibliothek bin fehle , aber ich habe keine Ahnung, wie ich das überprüfen oder beheben kann, da es für ein CE5.0-Remote-Gerät gebaut wird. Ich stoße auch auf einige andere subtile Hinweise, dass mir etwas wie LR_CREATEDIBSECTION und andere LR-Konstanten, die nicht existieren, und kleine Unterschiede in den Typen fehlen (HBITMAP wird nicht gemocht und LPCWSTR wird bevorzugt).

Jede Hilfe wäre sehr willkommen. Nur ein Hinweis, WindowsMobile5.0 Code funktioniert nicht auf dem Gerät, und wenn ich die störende Funktion auskommentieren kompiliert und läuft der Code (es wird nicht verwendet, da DirectDrawCreate ist irgendwie wichtig, aber der LNK-Fehler verschwindet)

Antwort

3

Sie sollten Ihr Programm mit ddraw.lib verknüpfen. Dies ist die Import-Lib für Direct Draw auf Windows Mobile.

+0

Danke, das scheint sich um das Problem gekümmert zu haben. Ich habe vorher eine Menge Suchen gemacht, aber die, die meinem Problem am ähnlichsten schienen, kamen von einem Mangel an dxguid.lib, was natürlich dann komplett fehlschlug, als ich es anschloss (ich fand auch heraus, dass ich .libs in VS2008 C++ falsch, aber ein bisschen mehr Suche hat sich darum gekümmert). – Lunin