Making managed directx app work

Started by
6 comments, last by AnttiKarhu__ 18 years, 6 months ago
Hello. I'm making a little game using Managed DirectX and C#. On my own computer the game works just fine, but when i try to run it on other computers, i get error message (messages was in finnish, but they was something to do with jit debugger, or such). Translated in english it would be something like this: "Application has encountered an error, that could not be handled.", and "Registered jit debugging is not available. Check computer settings. cordbg.exe !a 0xb2c" etc... Is this something to do with the DirectX runtimes? What version of DX runtimes the user needs to run a Managed DirectX game? Do i have to do more than just add reference to the Managed DX SDK, and add needed "using Microsoft.DirectX" -statements to the code?
Advertisement
The user that is running your application needs the managed directX runtimes that are associated with the version of the SDK you developed with (or later). Typically the problem is that the user doesn't have an up to date version of the d3dx dll that you are using. The safest way to distribute your applications is to download the latest directx runtime developer redistributal package and install that. You can get this here.

Also make sure that your user also has the correct .Net framework installed also. If you are using any Visual studio 2005 beta (although you shouldn't be distributing your apps with it) you should make sure your user has the .Net framework beta 2 installed. Otherwise the 1.1 framework should be just fine. Hope this helps.
You need to find the "Microsoft.DirectX.Direct3D.dll" and similarly named files on your computer and stick them in the .zip file that you send to people. Your game should work properly if either A) you installed using Microsoft's DirectX installer with the special command line switch that I forgot, or B) put the .dlls in the same folder as your .exe.

These are typically installed on the developer's machine at:

C:\Windows\Microsoft.Net\DirectX for Managed Code\(version number).
Do i have to put all the dll:s inside the package, or just those which are referred in the visual studio project? I mean, do the dx dll's itself have references to other dx dll's?

I sent a test package to my friend, with dx 9c and .net framwork 1.1, with dll's i used in project, and it did not work...

Is there some smaller dx installer than the 34MB redist package, that could install just the managed directx components of the directx runtime?
intrest86 put a package like this together a while ago. I don't know why they unstickied it, could be that it's using outdated versions of the runtime. Anyway, I haven't tested it myself but it seems to be exactly what you need.

Click here for the thread on the Managed DirectX web installer.
Rim van Wersch [ MDXInfo ] [ XNAInfo ] [ YouTube ] - Do yourself a favor and bookmark this excellent free online D3D/shader book!
Quote:Original post by remigius
intrest86 put a package like this together a while ago. I don't know why they unstickied it, could be that it's using outdated versions of the runtime. Anyway, I haven't tested it myself but it seems to be exactly what you need.

Click here for the thread on the Managed DirectX web installer.

All sticky threads are unstuck after a while - otherwise the first page of the forum would've been full of them. People are expected to bookmark the threads that interest them. [smile]

Within the DirectX 9.0c Redistributable, there's 3.4MB file named mdxredist.msi. That might help a bit as it's just the Managed DirectX redistribution installation files.
Rob Loach [Website] [Projects] [Contact]
Quote:Original post by Rob Loach
Within the DirectX 9.0c Redistributable, there's 3.4MB file named mdxredist.msi. That might help a bit as it's just the Managed DirectX redistribution installation files.


Where? Only files i got from that package was:
Aug2005_d3dx9_27_x64.cab
Aug2005_d3dx9_27_x86.cab
Aug2005_MDX_x86.cab
BDA.cab
BDANT.cab
BDAXP.cab
DirectX.cab
dsetup32.dll
DSETUP.dll
dxdllreg_x86.cab
dxnt.cab
DXSETUP.exe
dxupdate.cab

And i did not find the file inside the cabinets, either...
#edit
I found the file inside the directx sdk.

intrest86's installer seems to be very good. Thanks for that.

[Edited by - AnttiKarhu__ on September 28, 2005 11:59:57 AM]

This topic is closed to new replies.

Advertisement