Click here to Skip to main content
15,888,401 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
Hi,
I have written a simple app using DirectX 10. Everything works fine. But I have moved my app to other computer and try to run it. Then info has popped up that I need a D3DX10d_42.dll file. I don’t want to install DirectX on that computer. So I have copied this dll and it's fine.

My question is why I need debug version of this dll?

It doesn’t work with D3DX10_42.dll. I’m pretty sure that I have compiled app to release version (about 81kB and the debug takes about 405kB).

Thx in advance,
Paul
Posted
Updated 28-May-10 6:11am
v3
Comments
Moak 28-May-10 12:12pm    
Updated subject and tags, assumed from your last post that you are using C++.

1 solution

Which version of the DLL that your program is using depends on which build of the library your program actually linked to.

You may either need to check your linker settings and make sure that in Release you are not linking with the debug lib or check your code for any #pragma comment(lib, "...") and make sure you use the correct one.

Personally I have this:
#ifdef _DEBUG
#pragma comment(lib, "d3dx9d.lib")
#else
#pragma comment(lib, "d3dx9.lib")
#endif


So that the relevant version is linked with for the build. I'd put it in the actual settings but I keep the stuff on SVN and this works out as a little easier for me.
 
Share this answer
 
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900