Jump to content
  • Advertisement
Sign in to follow this  
Toolmaker

Deploying an Managed DirectX game - Am I missing something?

This topic is 4844 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

I developed a very simple game using Managed DirectX 9. However, when I attempt to deploy it to some people to get it tested, they all get the same error: System.Io.FileNotFoundException I catch all exceptions within the game in the Main, so that's not the problem. I _assume_ it has to do with their Managed DirectX DLLs missing. Because, if I send it to someone who has the SDK installed, it game works. Is there some sort of MSI out there which ONLY contains the Managed DirectX 9 dependencies? I can't seem to find one on the MS site. Toolmaker

Share this post


Link to post
Share on other sites
Advertisement
Guest Anonymous Poster
This is probably what you're looking for: DirectX 9.0c Redistributable, including DirectX for Managed Code.

Share this post


Link to post
Share on other sites
You should check out the actual text of the error, but I'm guessing you are missing the D3DX dll. The main solution for this is to take the redistributable from your SDK, and remove all of the components from it that are not neccesary. You will then have to add the setup to your install process. The sticky thread in here should help out, it checks for the Managed DirectX assemblies and installs the June D3DX (or you can swap for some other one).

Share this post


Link to post
Share on other sites
Remember that the Microsoft.DirectX.Direct3DX assembly has changed with each 2 month release, so if you are using the newest version of it the client will also need to update to the redist' for the current month.

I Agree with the above post about the rest of the text for the error though, I have seen people chasing an error thinking it was a directX Problem, but in actual fact it was one of their media files that was in the wrong directory.

Share this post


Link to post
Share on other sites
I know it's not my media, as the game works on both my computer, and the computer of someone else(Who aswell has the SDK installed).

I'll look into the installing a good version of the Runtime for MDX. In the mean time, could you guys check out:
http://www.toolmaker.nl/downloads/DodgerGame.zip

I wrote it as an example game from the Managed DirectX 9 Kickstart book, so it's not my own game :P

Toolmaker

Share this post


Link to post
Share on other sites
I've seen a few other people with this problem... and to be honest I never really nailed it down despite advice I followed to the letter from people around here. Some machines it would install fine on - even virgin ones that had to be upgraded from DX8 first. On others... with seemingly no pattern to failure, it would not work.

There is a NASA C# project that had similar problems.

Share this post


Link to post
Share on other sites
A good way to diagnose problems like that is through the Fusion Log Viewer (fuslogvw.exe). It will log all failed (and optionally, also successfull ones) assembly binds, and show the paths it probed for that assembly. However, I'm not entirely sure if fuslogvw.exe ships with the .NET runtime or just the SDK.

If fuslogvw isn't an option, use filemon from Sysinternals. Run it while trying to start the application (filtering on the name of the exe) and look through the log for files it cannot find.

Share this post


Link to post
Share on other sites
Isn't there a MDX redist without the latest DirectX version? I remember Pouya handing me a few times the redist for MDX only.

Because these people already have the latest DirectX versions, just not the latest version of MDX.

Toolmaker

Share this post


Link to post
Share on other sites
Quote:
Original post by Toolmaker
Isn't there a MDX redist without the latest DirectX version? I remember Pouya handing me a few times the redist for MDX only.

Because these people already have the latest DirectX versions, just not the latest version of MDX.

Toolmaker



You can configure the DirectX Redist that ships with the SDK such that it includes only MDX and D3DX (you'll likely need both). See the documentation on how to do that.

Paul

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • 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!