How to compile into an *.exe that will run on another machine

Hello friends,

I have been trying unsuccessfully to turn a set of working source codes (written in C) into an executable and have that *.exe be able to run on another machine. I have tried both as a Debug and Release version but no luck. What am I doing wrong Here are my actions taken:

1) File/New Project from Existing Codes

2) Select all the necessary *.c, *.h, and *.rc files

3) Changed project's properties to compiling C language and not as C++

4) Pressed F5 - no errors were reported and 1 succeeded

5) Copied *.exe to another machine, ran it, and got an error something along the line that installation settings were incorrect and that reinstallation may help fix it.

Thanks ahead for any input and advice you can you.



Answer this question

How to compile into an *.exe that will run on another machine

  • DugganFifr

    Did you install the SxS binaries on the other mahcine

    Thanks,
    Ayman Shoukry
    VC++ Team


  • Tracey West

    Thank you for your respond Ayman. I read through the links that you sent me and tried using the depends.exe to figure out where my dependency problem lies. Here is the error message that I am coming up with in Depends.exe:

    Error: The Side-by-Side configuration information in "c:\program files\racetrax\MyApp\MyApp.EXE" contains errors. This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem (14001).
    Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.

    The file that shows up red is called MPR.DLL. Please let me know what you think and if there is anyway to avoid deploying my application without an attached .NET framework 2.0. As I forgot to mention previously, my application was originally written for Windows 95 and 98 OS so it should still work for them. It is only since I have recompiled the source codes in Visual C++ 2005 Express Edition that it no longer on machines with OS as new as XP with SP2.
    Thanks again for your input and looking forward to your reply.


  • Pranav

    You probably need the SxS binaries installed on the other machine. Take a look at this previous post for more details.

    http://forums.microsoft.com/MSDN/ShowPost.aspx PostID=217803&SiteID=1

    Thanks,
    Ayman Shoukry
    VC++ Team


  • arjunan

    How do you create an executable file from valid source code

    I tried all the options in the build menu: Build Solution, Rebuild Solution, Build (filename), Rebuild (filename), Project Only > Build Only (filename), Project Only >Rebuild Only (filename), Batch Build..., Compile

    and under Debug: Start Debugging, Start Without Debugging.

    All of these produced success messages in Output, and several files appeared, but there was no executable file. In previous versions, these commands generated a .exe file in the Debug subdirectory.



  • sadaniel

    There is no EXE file anywhere.

  • Dem On Web

    I can only suggest recreating the project using a standard project (e.g. new Win32 Project) and then adding back the source files into that project (add existing item).  I've used this technique many times over the years.
  • Allen Copeland Jr.

    Visual C++ likes to create two Debug folders for some reason, e.g. for project: myproject stored in c:\myproject

    you have:

    c:\myproject\debug

    and

    c:\myproject\myproject\debug

    Check both debug folders for an EXE file.

    Also, get the x86 redistributable here:

    http://blogs.msdn.com/nikolad/archive/2006/04/11/Download_location_for_VCRedist.aspx


  • How to compile into an *.exe that will run on another machine