Thread: BASETSD.h

  1. #1
    Registered User
    Join Date
    Aug 2005


    I need help with this topic, I'm a noob:
    I am using VC 6.00 with the DirectX SDK. I have the basetsd.h in my SDK include folder and I have added d3d9.lib and d3dx9.lib to my project settings yet I am still getting two error messages:

    F:\My Code\BGP\chapter08\trans_sprite\game.cpp(107) : error C2065: 'D3DXSPRITE_ALPHABLEND' : undeclared identifier
    F:\My Code\BGP\chapter08\trans_sprite\game.cpp(118) : error C2660: 'Draw' : function does not take 5 parameters
    Any suggestions?

  2. #2
    Registered User LiNeAr's Avatar
    Join Date
    Aug 2005
    This topic is a few months old. Make another thread, don't bring up old threads and expect people to answer in them.
    IDE: Microsoft Visual C++ .net Standard 2003

  3. #3
    &TH of undefined behavior Fordy's Avatar
    Join Date
    Aug 2001
    Split from the BASETSD.h sticky thread.

    If you want to discuss a problem, please start another thread

  4. #4
    Super Moderator VirtualAce's Avatar
    Join Date
    Aug 2001
    This does not appear to be an error stemming from a lack of BASETSD.h. Those types of errors will most certainly be data type errors or undeclared identifier errors since BASETSD.h declares some new types that MSVC 6.0 simply does not know about.

    This error will result from the following conditions:

    • A compile mismatch - essentially you are either using newer libraries with older headers or vice versa. Make sure you ONLY use the DX headers with their respective libraries. Basically if the library you are linking with did NOT come from the same DX SDK that the headers you are including in your code did....then don't use the library. Libraries should only be used with the headers that came in the same SDK. You cannot mix match SDKs and expect DirectX to function correctly.
    • Attempting to perform an outdated function or a function who's prototype and/or usage has been significantly altered. Make sure the documentation you are using is also from the same SDK as your headers and libraries came from. Otherwise the documentation will be incorrect and because the code base has will get strange errors.
    • Not including the correct headers
    • Failure to link properly with the DX9 libraries - make sure the path to the libraries is at the TOP of the list in your IDE or they will not be linked in correctly. Same holds true for include directories.
    • Using an incorrect, outdated, or misspelled identifier. Some of the identifiers change somewhat from one version of DX to the next. Check your docs and verify you are using the correct identifiers.

    Again, this is not a BASETSD.h error.

    Judging from the error and from the fact that the ID3DXSprite interface was changed significantly from DX8 to DX9 - I'd say you are using DX9 libraries but consulting a DX8 help file. The ID3DXSprite->Draw() function has changed in DX9. Consult your DX9 documentation.
    Last edited by VirtualAce; 08-11-2005 at 07:32 PM.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Replies: 8
    Last Post: 06-04-2009, 02:03 PM
  2. Direct3D Problem
    By loopshot in forum Game Programming
    Replies: 7
    Last Post: 12-28-2005, 04:11 PM
  3. Please STICKY this- vital to MSVC 6 dev - BASETSD.h
    By VirtualAce in forum Game Programming
    Replies: 11
    Last Post: 03-15-2005, 09:22 AM