Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Dark GDK / When Installing DarkGDK it...

Author
Message
Dragon Tiger Wolf Bald Eagle
16
Years of Service
User Offline
Joined: 5th Feb 2008
Location:
Posted: 25th Jan 2010 21:28
When Installing DarkGDK it requirs the August installation of DirectX. Well I have found to allow others to test the level I made they too must install that same item. How would I include that in a installation program for my game? That and any one know a good tutorial on making an installation program?

The quality of what a man gives without seeking anything in return shows his integrity.
Cetobasilius
14
Years of Service
User Offline
Joined: 29th Dec 2009
Location: Mexico
Posted: 26th Jan 2010 09:14
just search for d3dx9_35.dll, or download it and put it in the same place as your executable file. and remember to compile in release mode.

hi
Dragon Tiger Wolf Bald Eagle
16
Years of Service
User Offline
Joined: 5th Feb 2008
Location:
Posted: 27th Jan 2010 07:07
Thanks. I will try that.

The quality of what a man gives without seeking anything in return shows his integrity.
Hassan
15
Years of Service
User Offline
Joined: 4th May 2009
Location: <script> alert(1); </script>
Posted: 27th Jan 2010 07:55 Edited at: 27th Jan 2010 08:02
compiling in release mode doesn't change anything, using debug mode is better because you can use breakpoints, only the last compile ( while releasing the project ) should be in release.

Mireben
16
Years of Service
User Offline
Joined: 5th Aug 2008
Location:
Posted: 27th Jan 2010 08:02 Edited at: 27th Jan 2010 08:05
Please note that distibuting just that one DLL with your program is against the license agreement of the DirectX SDK. Copying the DLL is good for a quick test, to see if your program works on the other computer, but it should not be regarded as a final installation procedure. Also, you may need more files than that to make your program work on another machine.

There is a text file in your SDK installation which tells you what files you need to distribute at least. If you installed the SDK to the default path, then it is here:

C:\Program Files\Microsoft DirectX SDK (August 2007)\Documentation\License Agreements\directx redist.txt

The redistributable files are in this directory:

C:\Program Files\Microsoft DirectX SDK (August 2007)\Redist\

Try this. Copy the files from the Redist directory which are mentioned in the license agreement:

DSetup32.dll
DSetup.dll
DXSetup.exe
DXupdate.cab
dxdllreg_x86.cab

and the package file that contains the usually missing d3dx9_35.dll:

AUG2007_d3dx9_35_x86.cab

The size of all this is about 4 MB, you can put it on a pen drive. Then on the other computer, start the DXSETUP.exe. It should install the core files of this DirectX version into the Windows directory and register them, so if you want to use several Dark GDK programs on a machine, they will all use the same DLL instead of each having their own copy of it.

This procedure - just like copying the dll - will only work if the other computer already has a later version of DirectX 9 installed. That is true for most machines, but if you are not sure or if this does not work, then copy the whole Redist directory and run the setup from the complete installation set. In fact, that is what you should always do, but the size of the whole installation set is about 62 MB, that is why I started experimenting with this reduced set which - I hope - complies with the license agreement and works in most cases. I'm not sure if you will need other packages from the installation set for programs that use more features of DirectX, or if you install on 64-bit Windows version, or on a machine that has DirectX 10 but not 9... If in doubt, use the complete set.

Note that, if the other computer never had a program installed which was developed with that version of Visual Studio that you are using, then you will need to install the Visual Studio redistributables as well. If you try to run your program and you receive "error in running application" or "manifest error" or some similar weird message (but not dll error), you probably need to install these. Just like DirectX, you install these only once and then all programs can use them. For example, here is the link to the VS 2008 Service Pack 1 redistributable:

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=a5c84275-3b97-4ab7-a40d-3802b2af5fc2

If you use another version (like without service pack) then search the Microsoft site for the correct download.

About compiling in debug/release mode: you should compile in release mode when you distribute the game on other computers, because debug information does not make much sense if you are running the program outside the debugger, it just increases the size and makes performance worse. If your friends have the complete development environment, then they can make use of debugging but then they might as well compile the program for themselves from source code.
Dragon Tiger Wolf Bald Eagle
16
Years of Service
User Offline
Joined: 5th Feb 2008
Location:
Posted: 27th Jan 2010 20:01
Now question When I debug it works fine but when I release it gives me this bug
Unhandled exception at 0x00000db0 in FPSFameGame.exe: 0xC0000005: Access violation.

The quality of what a man gives without seeking anything in return shows his integrity.
Hassan
15
Years of Service
User Offline
Joined: 4th May 2009
Location: <script> alert(1); </script>
Posted: 27th Jan 2010 20:04
oh well, i dont have much experience in that, but check if you are using a variable without installing it, like:



Dragon Tiger Wolf Bald Eagle
16
Years of Service
User Offline
Joined: 5th Feb 2008
Location:
Posted: 17th Feb 2010 23:19
I got the Executibal to work on another computer by putting the files where the executibal is. I am still having Problems for the release. Though for them testing it to see how they like it debug works for that. Since I can actually get debug to work and not Release. I will keep trying to find out why the release is not working. It seems more to be based upon a picture not loading right or something like that. Thanks all. And thanks to Mireben I have no interest to break any law I will make sure when it is time to release it as a finished product all the files are included that is needed thanks.

The quality of what a man gives without seeking anything in return shows his integrity.
Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 17th Feb 2010 23:38 Edited at: 17th Feb 2010 23:39
When my project would not compile in release it turned out that I was making fence post errors in some of my 'for' loops, same issue as Hassan mentioned, I was operating on objects that did not exist and compiling in release mode is more strict on this issue.

Just keep commenting parts of your code out until it does run in release, then you may find the issue.

Cetobasilius
14
Years of Service
User Offline
Joined: 29th Dec 2009
Location: Mexico
Posted: 18th Feb 2010 03:19 Edited at: 18th Feb 2010 03:32
thats why its better to compile in release mode. in release mode you can Still use breakpoints and all that stuff. I can.

What do you think is better to debug? the version you are releasing or the version which will only be stable on your computer? i leave that to your criteria. i too had problems when compiling in release mode, i figured out i had some code errors. but that way i am sure the exe will run fine on other machines. It is illegal to distribute your program with the dll, but you can tell your firends to download it or something. Debug versions of your EXE will only run on computers with Visual Studio installed. i am not too sure of this. however, i am sure that in release mode, the exe weights less,and you only need that dll, and it Will run... i tried using a debug version of my exe and it threw an "incorrect configuration" error...

and about the error, if you have arrays, remember you declare them with a certain number for exaple: [90], remember the first object in this array will be number 0, and the last one 89. managing arrays wrongly can cause an overflow and erase or modify some other data ou did not want to modify. check your FORs, and all of your loops.

ive tried my prog like in 26 different machines, debug version did not run... only on ones with VS2008, and release ran well with only the dll.

Mattys solution is a good way to see what is wrong! (i discovered my error that way)

hi
Dragon Tiger Wolf Bald Eagle
16
Years of Service
User Offline
Joined: 5th Feb 2008
Location:
Posted: 18th Feb 2010 03:38
Yeah I tried a normall C++ program I made on another computer first trying the debug Executibal then the Release executibal the debug one wouldn't work the Release one did. Thanks for all the help.

The quality of what a man gives without seeking anything in return shows his integrity.

Login to post a reply

Server time is: 2024-10-02 01:44:38
Your offset time is: 2024-10-02 01:44:38