The Application Was Unable To Start Correctly (oxcoooo7b)

0 views
Skip to first unread message

Catherine Nicolo

unread,
Aug 4, 2024, 1:37:38 PM8/4/24
to roanonalruff
Googlingdoesn't bring up much, but seems to indicate that this is nothing Delphi specific and happens with other apps. It seems to be caused by calling into a 32 bit DLL from a 64 bit app or vice versa.

A load time dependency could not be resolved. The easiest way to debug this is to use Dependency Walker. Use the Profile option to get diagnostics output of the load process. This will identify the point of failure and should guide you to a solution.


I tried all the things specified here and found yet another answer. I had to compile my application with 32-bit DLLs. I had built the libraries both in 32-bit and 64-bit but had my PATH set to 64-bit libraries. After I recompiled my application (with a number of changes in my code as well) I got this dreaded error and struggled for two days. Finally, after trying a number of other things, I changed my PATH to have the 32-bit DLLs before the 64-bit DLLs (they have the same names). And it worked. I am just adding it here for completeness.


It is a missing dll.Possibly, your dll that works with com ports have an unresolved dll dependence. You can use dependency walker and windows debugger. Check all of the mfc library, for example. Also, you can use nrCommlib - it is great components to work with com ports.


It has been mentioned in earlier answers that using dependency walker is the way to go, in my case (my application keeps failing with the error code), dependency walker showed a few dll that are NOT relevant!


Finally figured out that I can run profiling by going to "profile" menu and it will run the application and stop at the exact dll that's cause the problem! I found out a 32bit dll was picked because of path and fixed it.


If you used Visual Studio to develop the app, you must make sure the new (i.e. the computer that the software was not developed on) has the appropriate Microsoft Visual C++ Redistributable Package. By appropriate, you need the right year and bit version (i.e. x86 for 32 bit and x64 for 64 bit) of the Visual C++ Redistributable Package.


Actually this error indicates to an invalid image format. However, why this is happening and what the error code usually means? Actually this could be appear when you are trying to run a program that is made for or intended to work with a 64 bit Windows operating system, but your computer is running on 32 bit Operating system.


This may be a case where debugging the debugger might be useful. Essentially if you follow the instructions here you can run two ide's and one will debug into the other. If you un your application in one, you can sometimes catch errors that you otherwise miss. Its worth a try.


In my case the error occurred when I renamed a DLL after building it (using Visual Studio 2015), so that it fits the name expected by an executable, which depended on the DLL. After the renaming the list of exported symbols displayed by Dependency Walker was empty, and the said error message "The application was unable to start correctly" was displayed.


That can happen if for some reason a x86 resource is loaded from a x64 machine. To avoid that explicitly, add this preprocessor directive to stdafx.h (of course, in my example the problematic resource is Windows Common Controls DLL.


You can have this if you are trying to manifest your application that it has a dependancy on the Microsoft.Windows.Common-Controls assembly. You do this when you want to load Version 6 of the common controls library - so that visual styles are applied to common controls.


The main problem, of course, is that a DLL file is missing, or, even more likely, corrupt. If this is the case, then I have some pretty good ideas (especially if you've downloaded and installed a DLL manually!)...


This solution of copying/pasting missing DLL's into system32, etc., used to work since I can remember in the 1990's, but it doesn't seem to work anymore (2020). So if you run into this problem recently, I suggest:


Just solved this problem for my personal project (thanks to Dries for that). For me it was because the project path was too long. After saving the .sln to a shorter path (C:/MyProjects) and compiling from there it ran without the error.


It is possible that you have multiple versions of the dll(s) on your system. You can search your system to find out. The issue may be solved by simply changing the order of the directories in your path. This was my issue. (Cannot run Qt Creator GUI outside of Qt. "The application was unable to start correctly (0xc000007b)" error)


I ran into this issue when fetching code from my repository and compiling on a new machine. Copying over the entire repository and then compiling resulted in an executable which worked. Turns out a 32bit DLL accidentally wasn't checked in. As the people above state, use "Dependency Walker" to figure out where it goes wrong.


To make it more clear what to look for see the below screenshot, with in the background the exe trying to load the wrong DLL (notice the '64') resulting in "the application was unable to start correctly 0xc00007b" and in the foreground the exe which was simply copied over (which included the correct DLL).


"I upgraded my computer to Windows 10 last month with no major problem. But recently it became slow and showed other problems. Thus I tried reinstalling the same version of Windows 10, hoping to get away from the problem. Finishing installing OS, I had to install commonly used applications, and I received error "The application was unable to start correctly (0xc000007b). Click OK to close the application."


"I searched this error online and viewed a lot of webpages related to the error. The suggested solutions were for Windows Vista/7/8/8.1, but I need fix it on Windows 10. What's more, my email application did not work, and I fixed it by downloading Visual C++ Redistributable for Visual Studio 2012 Update 4. I'm using a desktop running Windows 10, i3-2100 CPU, 8GB RAM, 2TB Seagate HDD. Is there any easy solution to fix the error for Windows 10? Please help!"


This unable to start error is an issue happened to applications on Windows computer and it can be a stressful problem. But this error does not necessary mean it is beyond repair or the end of involved software. There must be certain reason leading to the error when you attempt to run the software. You will become able to fix the problem after try several troubleshooting steps here.


The error code means an invalid image format. Specifically, you are attempting to start an application which is designed to run on 64-bit operating system. But your computer is running 32-bit Windows. The 32 bit application cannot load a 64 bit dll, thus the mixing up 32 bit with 64 bit environment brings about problem.


0xc000007b error is also has something to do with programs installed on your computer such as .NET Framework, Direct X and Microsoft Visual C++. It tends to appear when you try to launch high graphic games like Far Cry Assassins without updating to .net Framework. When .NET framework is absent from your computer, you'll not be able to run apps build on it.


There are no defined solutions to deal with this application error. Below we have a variety of methods you can follow to get rid of the 0xc000007b error message. In many cases you may need more than one of fixes, thus you need try them one after another if the first doesn't work for you.


First, you need to uninstall it and remove anything related to the software from computer. Then restart computer before starting reinstallation. During installation, please turn off antivirus software.


To do this, please right click the shortcut icon on desktop and select "Run as administrator" option. Click "Yes" when you see the popped up message box and you will be able to run the application successful.


If you can't find the option after right clicking application icon, select "Properties" option from the right-click menu. Click "Compatibility" tab on the Properties window and check the option "Run this program as an administrator". Then click OK button.


.NET Framework may give rise to all kinds of errors and problems if it is not properly installed or updated. If your computer doesn't install the latest version of .NET Framework, update it to wipe out error.


If file xinput1_3.dll corrupts or gets overwritten with some other version which is not compatible, the 0xc000007b error will appear. It is a little bit complicate to fix the error through updating DLL, as this method involves operations like replacing 32-bit xinput1_3.dll with an appropriate version inside C drive. To update DLL with a proper version, please follow these steps:


To avoid errors you should always make sure your computer has updated to the latest version of DirectX. If none of the previous solution works, you should try updating DirectX. The way to check whether your DirectX is the latest version is downloading DirectX Runtime Web Installer from Microsoft's official website. Download the setup file and run it. Then you can follow on-screen steps to reinstall it. When installation completes, you need to restart computer.


Microsoft Visual C++ runtime packages are of great importance to Windows application. If they are not well installed, programs can't work normally and report various errors including the application error 0xc000007b. Microsoft Visual C++ runtime packages are released in both 32-bit and 64-bit versions.


Since operations in this method relate to important part of operating system. It is suggested to create a system backup just in case something goes wrong. You can easily restore computer to current status. If you don't know how to do that, you can use Isoo Backup (old name Eassos System Restore) to backup Windows, as this software is easy-to-use and fast. The following steps explain how to reinstall Microsoft Visual C++ runtime packages:


In some situations, application running on your computer is not totally compatible with system. For instance, some software requires high system configuration, but system on your PC can't meet requirement. You need to set the compatibility settings between system and application, because the incompatibility between system and software may lead to error talked about in this guide. Let's see how to do this:

3a8082e126
Reply all
Reply to author
Forward
0 new messages