Click here to Skip to main content
13,050,450 members (78,316 online)
Rate this:
Please Sign up or sign in to vote.
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,
Posted 28-May-10 5:28am
Updated 28-May-10 6:11am
Moak 28-May-10 12:12pm
Updated subject and tags, assumed from your last post that you are using C++.

1 solution

Rate this: bad
Please Sign up or sign in to vote.

Solution 1

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")
#pragma comment(lib, "d3dx9.lib")

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.

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

  Print Answers RSS
Top Experts
Last 24hrsThis month

Advertise | Privacy | Mobile
Web01 | 2.8.170713.1 | Last Updated 28 May 2010
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100