Hi,
I've recently started programming using DirectX and C#. I created a game and it runs fine on my development machine (.Net 1.1, DX SDK). But when I compile the game for a release, and move it onto a machine that only has the DirectX runtimes, it fails to find any of the neccessary libraries and will not start. I've tried telling to to "include resources" when it compiles, in which case it copies a bunch of .dll's to the release directory, but that still wont work on regular machines. It works fine on any machine that has the SDK installed.
The regular machines are all running Dx9.0c and .Net 1.1. Any idea how to package a release of a peice of DX software so that it runs on machines that don't have the SDK installed

Packaging a DirectX Game
wyatt blake
From my reading you install the SDK and make sure to add in the optional redist files option. Then you choose what you want in your redist based on if you know for sure that your end users will already have the core files etc. Then add all the files to your installer and make the call into DXSetup from your installer.
Steven A. Dunn
You also need more than just the managed assemblies, you need the underlying native code DLLs since managed directX just calls them.
However, the EULA for directX does not allow you to pick and choose individual files. You need to get the redistributable files (they are an optional component when you install the SDK) FOR THE SAME VERSION YOU CREATED YOUR APP WITH! and call the redist from your applications installer. Since this is a .Net app you need to ensure that .net 1.1 is on the machine BEFORE you call the DX redist otherwise it will not install the managed libraries.
Is there a sample/tutorial/step byt step on how to do this - not that I have seen anywhere. Maybe you can write it up as you do it. It is a common question.
Norm Estabrook - MSFT
Dan Rasmussen
wgpubs
Guy Smith-Ferrier
Dave Speck
i. Right to Use and Distribute. The code and text files listed below are “Distributable Code.”< xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
· DIRECTX REDIST.TXT Files. You may copy and distribute the object code form of code listed in DIRECTX REDIST.TXT files.
The files listed in redist.txt do not include these individual files, you need to distribute the original CAB files and call dxsetup.
See
http://forums.microsoft.com/MSDN/ShowPost.aspx PostID=91555&SiteID=1
http://forums.microsoft.com/MSDN/ShowPost.aspx PostID=83603&SiteID=1
http://groups.google.com/group/microsoft.public.win32.programmer.directx.misc/browse_thread/thread/71d877e1df5b82a8/aec3e729ea95428d
http://groups.google.com/group/microsoft.public.win32.programmer.directx.managed/browse_thread/thread/bc681ac066c125d0/59761b1d747bd921
Rafiq
d3xd9_27.dll
Microsoft.DirectX.Direct3d.dll
Microsoft.DirectX.Direct3dx.dll
Microsoft.DirectX.dll
(any other managed directx dll's you are using, for instance directsound, etc.)
You can download the example off my website, gosub.com, and see how I've done it.
-Jeremy