Jump to content
  • Advertisement


This topic is now archived and is closed to further replies.


Dx8 and BCB5

This topic is 6074 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello again... I have had many problems setting up the Dx8SDK Libs for BCB5. I get "d3d8.lib includes invalid OMF" errors. I had these error when using the wrong libs with Dx7SDK. Can anyone tell me how to setup BCB5 to work with Dx8SDK? Can it be done? Dx7SDK had a folder named Borland with libs in it, but the dX8SDK doesn''t even mention Borland. Any help would be GREATLY appreciated! Mike P.S. I endlessly failed to create a DirectDraw7 object using the DirectDrawCreateEx() function, I finally used the CoCreateIntance() function with success. Is this the only way to do this with BCB5? Is the DirectDrawCreateEx() function any better or worse? Go Canuck Go!

Share this post

Link to post
Share on other sites
Guest Anonymous Poster

Sorry about the wait I was waiting for this flaky adsl modem to connect to my isp...what a joke...craps out every hour...

Anyways, I downloaded some libs from a web page that work with BCB5 and managed to get Dx8 to work...Yikes, it''s not Dx7 is it.

But I do want to what I was doing wrong in Dx7 so I will try to show you what I did, I simply created a new app Included ddraw.h and added ddraw.lib to my project from the borland directory in the dx7sdk include directory.

In the header under public

HRESULT ddrval;
IDirectDraw7* lpDD7;
IDirectDrawSurface7* lpDDSPrimary;
IDirectDrawSurface7* lpDDSBack;

void __fastcall InitDD();

In the CPP

In the forms consructor: lpDDSPrimary = lpDDSBack = NULL;

void __fastcall TDDAPP::InitDD()

ddrval=DirectDrawCreateEx(NULL,(VOID**)&lpDD7, IID_IDirectDraw7, NULL);
DisplayError("InitDD7(): DirectDrawCreateEx() failed");


I cant remember if there was a & before lpDD7 but I think its moot as BCB would error.

It''s right from the SDK so I''m not sure what was up, I assumed the libs were wrong somehow. I had success using DirectDrawCreate() and then querying for a IDirectDraw7 Interface, but I could not query a Direct3D7 Interface.

As I said in my last post I used CoCreateInstance() to create a IDirectDraw7 Object and query the IDirect3D7 Interface. this did indeed work...well I stopped right after getting a IDirect3DDevice7 Interface as I think 3D is too much more me right now...

So is there any difference how I create the Dx7 Object?
CreateEx vs CreateInstance...

Thanks for the reply!


Share this post

Link to post
Share on other sites
Based off these project options settings can any one tell why i get this linker error
[Linker Fatal Error] Fatal: Unable to open file ''ODBCCP32.LIB''

in project options
c++ tab
in the member pointers section all cases is selected
in compatibility nothing is selected
in general nothing is selected
in templates nothing is selected
in exception handling enable RTI and Enable exceptions/ destructor cleanup is
in virtual tables smart is selected

advanced compiler tab
in the out put section autodependency information & generate underscores is
in floating point nothing
in language compliance Borland
in source mfc compatibility and identifier length is set to 250
in instruction set 80386 is selected
in data alignment quad word is selected
in calling conversion c is selected
in register variables automatic is selected

compiler tab
code optimization speed is selected
in warnings all is selected
debugging nothing is selected
precompiled headers nothing is selected
compiling stack frames and treat eneum types as ints is selected

application settings nothing
output settings target file extension : exe


all my packages are checked in the design packages box
runtime packages is un checked

debugging information -line numbers
case sensitivity -globals
warnings - level2
generate listings nothing
code gaurd - - nothing

in not sure this is relevant

linking - create debuging information and dont generate state file s is
map files off is selected
warnings - selected is selected

advanced linker

directories and conditionals
include path $(BCB)\include;$(BCB)\include\mfc;$(BCB)\include\atl
library path $(BCB)\lib;$(RELEASELIBPATH);$(BCB)\lib\psdk
debug source path $(BCB)\source\vcl
intermedeate output release
find output Release\

yeah thats about it

i also haaave the correct dx paths in there when iam actually trying to build the project code


Share this post

Link to post
Share on other sites
Hi sakira

Sorry about the wait... My DSL bites... I am on Dialup...

Anyways, To make a long story short, I don''t believe any of those properties settings matter...Well they probably matter, but I did have the exact same errors trying to get Dx7 to work using the SDK files.

I tried changing all the settings in the properties with no improvement, It seemed to be simply using the BCB provided ddraw.h file opposed to the ddraw.h file in the Dx7SDK.

Anyways, once I had the correct header, the errors dissappeared.

Not tht I can tell you what exactly the problem is but I can tell you using the header files from the SDK with Borland seems to cause problems, specifically how the header tell the compiler where and what TYPE of libs are being loaded.

IE the SDK Headers seems to have MSVC++ instructions or something along those lines...

Hope I helped you a little bit...

You have my email if you need more clarification...


Share this post

Link to post
Share on other sites

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!