🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Program Compatibility

Started by
6 comments, last by Omega147 16 years, 11 months ago
Hi, i have written a program based around the Lesson 47 using Cg to create waves. The program compiles and works fine on my own computer (using Visual C++ Express) but when i try to run it on another computer i get the error "This application failed to start because the application configuration is incorrect". I have uploaded the zip with my program in it including all the code: http://www.filefactory.com/file/a96d86/ If anyone has any help on how to get it to work with other computers it would be very appreciated. Thanks!
Advertisement
Quote: Original post by Straits"This application failed to start because the application configuration is incorrect"

This error is generally solved by packaging all required DLL's and manifests along with your application. Some computers are picky and will require you to install the Redistributable Package on the machine in question, and sometimes having the most up-to-date version of the .NET Framework will do the trick. Other distribution problems may be at large here.

To get you started on the road to solving this error, check into these articles:

Redistributing Visual C++ Files
Deployment (C++)
Bootstrapper
Ok, i have installed the VC Redist on my 2nd computer (which doesnt have visual studio) and i have used a program called dependency walker (www.dependencywalker.com) to find any missing dlls and copy them over, which i have done, but it still gives the same error. The Dependency Walker program says that "The Side-by-Side configuration information in Waves.exe contains errors. This application has failed to start because the application configuration is incorrect." which is basicly exactly the same as the windows error i get when i try to run it. What does this mean?
Quote: Original post by Straits
The Dependency Walker program says that "The Side-by-Side configuration information in Waves.exe contains errors. This application has failed to start because the application configuration is incorrect." which is basicly exactly the same as the windows error i get when i try to run it. What does this mean?

It means that your application's dependencies are still not being met (SxS Error 14001). Here are some more possible solutions to your problem:

- Be certain that the manifest file built with your debug/release application is included within the same directory as the executable itself.

- A quick trick (be sure to undo this step if it doesn't work): turn off embedded manifests in your application, then you won't have to include the manifest with the distribution. To do this, go to your project's properties, then to Configuration Properties->Manifest Tool->Input and Output, and in there, change "Embed Manifest" to "No".

- If your build machine is on XP Pro, and the target machine on XP Home, there is potential for the above-stated error to arise in this setup. If this is the case, be sure that the Home edition computer has all the latest Windows updates, then try it again.

- If the build machine and target machine are the same (both Pro or Home), make certain that they both have the same service pack and accompanying updates installed. Both .NET Framework editions should also be the same (though this is not always required).

- You may be using the wrong runtime libraries. If you have a single-threaded application, be sure that your application is not being built as a multi-threaded one, and vice versa. To check this setting, go to the project's properties, then to Configuration Properties->C/C++->Code Generation, and set "Runtime Library" to the appropriate setting for your debug or release build.

If none of that fixes your problem, then I recommend going to the first thread provided below, which has a long string of posts with more possible solutions. Additionally, I've provided another Microsoft link that discusses distributing your application via a setup program, which you should try if all else fails, as setup programs usually tend to do a good job at finding and including all the dependencies of the program attached to it.

The problem with this error that you've posted is that it has hundreds of different causes, and pinpointing the exact one can be a headache sometimes. Hopefully this one doesn't plague you for long, because I think I've run out of advice for solving it. :) If/When you do solve the problem, please post which solution worked for you, as I would be interested to know which one (if any) did it. Thanks, and good luck!


More Help: http://channel9.msdn.com/ShowPost.aspx?PostID=23261
Microsoft: http://msdn2.microsoft.com/en-us/library/ms235317(VS.80).aspx
Ok, well i got the program to finally run.. this is what i did (in order of which i did them)

-Installed Visual C++ 2005 Redist
-Included the cg.dll, cggl.dll and msvcr80d.dll
-Changed the runtime library to Multithreaded as opposed to Multithreaded debug

and i kept the embedded manifest on.

Unfortunately my 2nd computer has a REALLY old crap graphics card (SiS something) and wont run the CG code so it would load the program, ask me if i wanna go fullscreen, then crash upon trying to load the scene saying there was an error with sisgl.dll (my gfx card dll, nothin to do with the program afaik). I removed the Cg code to just output the flat mesh to check the program itself is at least working (since i know the cg code works) and it loaded properly :)

It should also be noted that the program was compiled in Vista Business, and my 2nd computer runs XP Pro SP2.

ill put up a link for the new build with the dlls n stuff included, if someone could please try n run it and tell me if it runs for u, i would be a very happy chappy :)

http://www.4filehosting.com/file/57008/Waves-zip.html
Works for me (Running XP Pro, SP2). Although, I don't see any water; you removed the code for that, right? I do see the blue-bricked tank, though. Lookin' good! And congrats on fixing your problem. :)
No, i included the full Cg code in that one :( this is what it looks like for me:

http://img382.imageshack.us/img382/117/wavesdemo2lc6.jpg

i wonder why its not displaying for you.... i doubt it the dlls anymore else it would give u an error, so it must be something to do with the code. I have used if statements in it, which i have heard will not work on a graphics card that doesnt have shader model 3.

Im currently adding sum error report stuff when it loads the cg programs so i can see whats happening :)
Quote: Original post by Straits
i wonder why its not displaying for you.... i doubt it the dlls anymore else it would give u an error, so it must be something to do with the code. I have used if statements in it, which i have heard will not work on a graphics card that doesnt have shader model 3.
My graphics card only supports up to 1.3 shader models, I believe (I know I don't have 2.0; it's sad). So, the error is probably on my end. If you code it to support my lower-end graphics card (NVIDIA GeForce4 Ti 4600) and need someone to test, just let me know.

This topic is closed to new replies.

Advertisement