EnglishGermanFrenchRussianPolishItalianSpanish
Log inRegister
 
Troubleshooting: 64-bit executable not starting
Post new topic Reply to topic
View previous topic :: View next topic
Author Message
rboerdijk
EGOSOFT
EGOSOFT



Joined: 11 Jan 2013
Posts: 696 on topic
Location: The Neverlands
Thank you for registering your game
PostPosted: Tue, 21. Oct 14, 12:48    Post subject: Troubleshooting: 64-bit executable not starting Reply with quote Print

Symptoms

1. Starting the 64-bit version of the game from Steam shows the Steam startup window stating "Preparing to launch X Rebirth" but then the window closes without the game starting at all. (see screenshot 1)
2. Starting the 64-bit version of the game directly via the EXE causes an error on startup and shows the following message: "the application didn't start correctly (0xc000007b)" (see screenshot 2)

NOTE: If any of the above things don't apply in your case, then you are likely to be suffering from a different problem and the steps provided below are unlikely to solve your issue. In this case take a look at the related issues to find a better match to your problem.

The actual cause of the problem can be one of these:

1. Missing Visual Studio/DirectX runtime or another missing DLL.
2. The 32-bit version of a DLL is attempting to be loaded instead of the 64-bit version.
3. A DLL is corrupted.



Solution

First make sure you have a 64bit operating system - XRebirth does not run with a 32bit operating system. If you do have a 64bit operating system, continue with the steps below.

The following steps should be performed, in sequence, to try to solve the problem yourself:


Verify game files

This will ensure that you are not suffering problems with missing or corrupted files in X Rebirth itself.

For Steam:
1. In Steam go to the "Library" section and select "X Rebirth".
2. Right-click on "X Rebirth" and select "Properties".
3. Click on "Local Files" and "Verify Integrity of Game Cache".
4. Once the verification is finished, restart your computer and try to start the game again.

For GOG:
1. In GOG select "X Rebirth".
2. Click on "More", "Manage Installation" then "Verify & Repair..."
3. Click on Verify Game
4. Once the verification is finished, restart your computer and try to start the game again.

If this doesn't solve the problem, continue with the following steps:


Correcting missing or corrupted DirectX DLLs

These steps ensure that there were no problems during the installation of X Rebirth, which might have resulted in missing system DLLs, and will also fix certain DLL corruptions which might have caused the problem.

For Steam:
1. In Steam go to the "Library" section and select "X Rebirth".
2. Right-click on "X Rebirth" and select "Properties".
3. Click on "Local Files" and "Browse Local Files...".
4. Go into the "_CommonRedist/DirectX/Jun2010" folder and run dxsetup.exe.
5. In the dialog that follows, click on "Next" twice and wait for DirectX to finish its setup.
6. Click on Finish.
7. Go into the "_CommonRedist/vcredist/2010" folder and run vcredist_64.exe.
8. If you are given the option to "Repair Microsoft Visual C++ 2010 x64 Redistributable to its original state" select that, and click on "Next".
9. Click on Finish.
10. Restart your computer and try to start the game again.

For GOG:
1. In GOG select "X Rebirth".
2. Click on "More", "Manage Installation" then "Show Folder"
3. Go to the "__redist\DirectX" folder and run dxsetup.exe.
4. In the dialog that follows, accept the license, click on "Next" twice and wait for DirectX to finish the setup.
5.Click on Finish.
6. Restart your computer and try to start the game again.

If that still didn't fix the problem, continue with the following steps:


Detect DLL 32-bit vs. 64-bit mismatch

1. Download DependencyWalker: http://www.dependencywalker.com/depends22_x64.zip
2. Extract the files to a local folder.

For Steam:
3. In Steam, go to the "Library" section and select "X Rebirth".
4. Right-click on "X Rebirth" and select "Properties".
5. Click on "Local Files" and "Browse Local Files...".

For GOG:
3. In GOG select "X Rebirth".
4. Click on More -> Manage Installation -> Show Folder
5. -

For Steam and GOG:
6. Drag-and-drop the "XRebirth.exe" file onto "depends.exe" in the folder into which you just extracted DependencyWalker.
7. If the lowest frame contains at least one entry stating (in red): "Error: Modules with different CPU types were found." you are suffering a 32-bit vs. 64-bit DLL mismatch issue (see screenshot 3 - number 2). Follow on with the next steps to deal with that. If you don't see such a message, skip the following steps since they won't fix your problem. If you still have exactly the same symptoms described above, please mail support@egosoft.com and provide your DWI file (see below).


Resolve DirectX DLL 32-bit vs. 64-bit mismatch

Warning: The next steps will only solve your issue if one of the listed files is causing the problem. Otherwise you need a different solution and these steps won't help you. In this case, please contact us at support@egosoft.com so that these instructions can be updated/extended.

In the upper left frame you should find one entry with a red icon (see screenshot 3 - number 1).
- D3D9.DLL
- D3DX9_43.DLL
- DINPUT8.DLL
- X3DAUDIO1_7.DLL
- XAPOFX1_5.DLL
- XINPUT1_3.DLL

If you see such an entry, follow these steps (if you see a different file listed there, contact us so that these instructions can be adjusted). If you don't see an entry there, then you can send the DWI-file to us, so we can check out other possible problems.

Steps to resolve the issue:
1. Close DependencyWalker.
2. Go to the "C:\Windows\system32" folder and rename the file you identified before (for instance XINPUT1_3.DLL) to something else (like: XINPUT1_3.bak) or move it out of the system32 folder.
3. For Steam: Go into the "_CommonRedist/DirectX/Jun2010" folder (in the X Rebirth directory) and run dxsetup.exe.
3. For GOG: Go into the "__redist/DirectX" folder (in the X Rebirth directory) and run dxsetup.exe.
4. Start the game.

If this didn't help, please contact support@egosoft.com and explain that you followed these steps without success and provide your DWI file.


Saving the Dependency Walker Image (DWI) file

To save the current Dependency Walker Image to a file in order to send it to Egosoft support follow these steps:
1. In Dependency walker select File -> Save As.
2. Make sure "Dependency Walker Image (*.DWI) is selected in the "Save as type" box.
3. Save the DWI file.

Technical Background Information

The startup error code 0xc000007b translates to STATUS_INVALID_IMAGE_FORMAT and indicates that either the executable itself (unlikely) or some dynamically loaded executable (most likely) have an invalid format. Invalid format can mean that the file is corrupted (unlikely) or has a different format (most likely). In most cases this is indicating that a 32-bit application tries to load some 64-bit DLL or vise versa.

The way Windows loads DLLs has been through several iterations over the time Windows evolved. Several changes were made in favor of protecting the user against viruses and malware. As part of this, the way applications load DLLs changed several times and the actual behavior doesn't depends not only on the application but also on the OS the application runs on, as well as security fixes which are installed (or absent) on the target system.

For an application to ensure that the proper DLLs are loaded there are several ways to go. One way is to prevent the use of DLLs altogether and link the corresponding libraries statically into the executable. For X Rebirth we moved over to statically linked libraries progressively (the latest related change at the time of writing was made in version 4.0, where we now link the Visual Studio runtimes directly in the game executable). For users this means that it's less likely to run into startup problems when DLLs are corrupted or mismatched.

The other way for applications to ensure the OS is loading the correct DLL is to include the required information in the executable's manifest. Simply speaking: the manifest contains information for the OS about how the executable is expected to be run and what its dependencies are. For X Rebirth we are planning to incorporate this information in a forthcoming patch so as to further reduce the likelihood of players running into these startup issues. This should fix corruptions which might have occurred during Windows Update or the installation of a Visual Studio redistributable.



Related issues

see also

Troubleshooting: Game not starting
Confluence XRWIKI

Reports in the official forum:

http://forum.egosoft.com/viewtopic.php?t=371015
http://forum.egosoft.com/viewtopic.php?t=369148
http://forum.egosoft.com/viewtopic.php?t=369220
http://forum.egosoft.com/viewtopic.php?t=372267[/b][/i]



 Description:
screenshot1
 Filesize:  15.88 KB
 Viewed:  446 Time(s)

screenshot1.png



 Description:
screenshot2
 Filesize:  21.27 KB
 Viewed:  444 Time(s)

screenshot2.jpg



 Description:
screenshot3
 Filesize:  523.38 KB
 Viewed:  572 Time(s)

screenshot3.jpg



Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic Reply to topic
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum
Control Panel
Login Data
The time now is Wed, 23. Aug 17, 15:44

All times are GMT + 2 Hours


Board Security

Copyright © EGOSOFT 1989-2017
Powered by phpBB © 2001, 2005 phpBB Group
Template created by Avatar & BurnIt!
Debug: page generation = 0.43106 seconds, sql queries = 17