Sign in to follow this  
JeremyCAFE

Application Crashing on computers WITHOUT SDK

Recommended Posts

We are currently have trouble redistributing our program to users who do not have the DirectX SDK Installed. I am 100% certain that they are running on the latest version of directX. Is there a build setting I am missing that prevents this crash from happened? They do not get a missing dll error, or any error at all. It simply crashes after the user clicks the icon to run.

Share this post


Link to post
Share on other sites
Define "crashes". Is it an access violation? If so, reading or writing, and what address? Are you checking the return values for all your relevant functions? What language? What SDK version? Are you running the debug runtimes on your machine?

Share this post


Link to post
Share on other sites
The crash does not give any information. It simply asks to report the crash to microsoft. We are running with the April 2007 SDK. The program never reaches a line of our code (from what it appears). I added a shutdown call before any of the Initialization functions are ever called and it still crashes.

This is with C++.

My directX control panel has "Use Retail version of Direct3D 9"

Share this post


Link to post
Share on other sites
does anyone know of a common problem we may be making with our build settings to cause the game not to run without the sdk installed?

Share this post


Link to post
Share on other sites
For that problem, the standard cause is missing DLLs.

First, verify that you're giving them a release build, since it's safe to assume they don't have any debug versions of CRT/MFC/xyz dlls on their system.

Second, since you're using the latest, greatest DX SDK, verify that they have D3DX9_??.dll on their system. I've lost track of the current number, since I'm not using that build.

Share this post


Link to post
Share on other sites
Are you distributing the appropriate D3DX DLL and/or other dependencies?

To assume your end-user has the same libraries and system configuration is a big mistake.

hth
Jack

Share this post


Link to post
Share on other sites
I have packaged the latest DirectX 9.0c End-User Runtime with the install. For users who were not up-to-date, they would receive the dll error. However, after updating the application would simply crash before any window is created. The version is in fact the release build of the game.

The executable runs fine on multiple computers with the project team and on a few other computers in which we knew the sdk was installed.

Edit: I have also distributed the d3dx9_33.dll with the package to test if that was the issue. It was placed in both the application directory and the system32 directory. This did not solve the problem.

Share this post


Link to post
Share on other sites
m_d3dObj = Direct3DCreate9(D3D_SDK_VERSION); // create the d3d object


is it possible that this line has anything wrong with it?


To add to this situation: I have another machine without the sdk installed. This allows me to test the issue. Previously, the SDK was installed and the application would run fine. However, after removing visual studio and directx sdk, the application crashes even after updated directx.

Share this post


Link to post
Share on other sites
Problem fixed.

Those of us who tested the game all had the same laptops, which meant we could all support the same resolution. We finally realized that the game was only crashing in fullscreen, which was caused from an unsupported resolution.

Thank you to everyone who tried to help, we appreciate it.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this