locked
DirectDrawCreate .lib RRS feed

  • Question

  • Where is DirectDrawCreate defined nowadays?

    "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib" from VS 2010 does have stuff like dsound.lib, but no ddraw.lib.

    Tuesday, July 27, 2010 9:09 PM

Answers

  • No, I'm using Windows XP/7. I know DirectDraw is deprecated, but I didn't expect old code to stop compiling.

    That is normal, sooner or later the support for old stull will be removed from the APIs / LIBs / DLLs. The best example is API function "SHLoadInProc". Vista came out, and this function was gone... Ok tihs was for security reasons. But maintaining old stuff is a big job...

    Given that DirectDrawCreate is declared in the headers, there must be a lib that defined it, right?

    No. If it is deprecated it may be possible it is gone in libs. Since "DirectDrawCreate" is still available on WinCE systems it may be possible the same headers are also used for CE targets and therefore it is still in the headers...

    For me you have three choices:

    1. Usage of an old DirectX SDK with ddraw.lib

    2. Modify your programm and use newer / actual APIs

    3. You use LoadLibrary / GetProcAddress to get any DDRAW.DLL entry-points : http://blogs.msdn.com/b/chuckw/archive/2010/06/16/wither-directdraw.aspx

     

     

    • Proposed as answer by Bordon Monday, August 2, 2010 1:01 PM
    • Marked as answer by Olaf vander Spek Thursday, August 5, 2010 8:11 AM
    Monday, August 2, 2010 1:00 PM

All replies

  • Will you use WinCE as target or PC?

    http://msdn.microsoft.com/en-us/library/aa919095.aspx

    DirectDrawCreate on PC target (Win2000/XP/vista/7) is an outdated API of directx version (DX5/6/7/8?) if I remember correctly...

    The Microsoft DirectX SDK (December 2005) contains the ddraw.lib for both x64 and x86. The most current DX SDK does not contain the ddraw.lib anymore...

     

    Wednesday, July 28, 2010 8:52 AM
  • No, I'm using Windows XP/7. I know DirectDraw is deprecated, but I didn't expect old code to stop compiling.

    Given that DirectDrawCreate is declared in the headers, there must be a lib that defined it, right?

    Wednesday, July 28, 2010 11:48 AM
  • No, I'm using Windows XP/7. I know DirectDraw is deprecated, but I didn't expect old code to stop compiling.

    That is normal, sooner or later the support for old stull will be removed from the APIs / LIBs / DLLs. The best example is API function "SHLoadInProc". Vista came out, and this function was gone... Ok tihs was for security reasons. But maintaining old stuff is a big job...

    Given that DirectDrawCreate is declared in the headers, there must be a lib that defined it, right?

    No. If it is deprecated it may be possible it is gone in libs. Since "DirectDrawCreate" is still available on WinCE systems it may be possible the same headers are also used for CE targets and therefore it is still in the headers...

    For me you have three choices:

    1. Usage of an old DirectX SDK with ddraw.lib

    2. Modify your programm and use newer / actual APIs

    3. You use LoadLibrary / GetProcAddress to get any DDRAW.DLL entry-points : http://blogs.msdn.com/b/chuckw/archive/2010/06/16/wither-directdraw.aspx

     

     

    • Proposed as answer by Bordon Monday, August 2, 2010 1:01 PM
    • Marked as answer by Olaf vander Spek Thursday, August 5, 2010 8:11 AM
    Monday, August 2, 2010 1:00 PM