32-bit application fails to start after 8.1 upgrade, gives error 0xC000007B because of missing system DLLs.

Anonymous
2013-10-23T07:28:03+00:00

I had been using "IBM Rational ClearQuest Client 7.1.2 for Windows" 32-bit application with Windows 8 Pro x64 without problems.

But after 8.1 upgrade the ClearQuest fails to start and gives error 0xC000007B, which indicates that there's a bad or missing DLL.

I used the Windows 8.1 ISO file from MSDN to do the upgrade and I've also installed the GA updates, but the problem remains the same.

The DependencyWalker reports that the clearquest.exe is missing six Windows 8.1 system DLLs:

API-MS-WIN-CORE-KERNEL32-PRIVATE-L1-1-1.DLL

API-MS-WIN-CORE-PRIVATEPROFILE-L1-1-1.DLL

API-MS-WIN-SERVICE-PRIVATE-L1-1-1.DLL

API-MS-WIN-CORE-SHUTDOWN-L1-1-1.DLL

EXT-MS-WIN-NTUSER-UICONTEXT-EXT-L1-1-0.DLL

IESHIMS.DLL

First three of those files are located in SysWOW64\downlevel, but the 32-bit clearquest.exe is not able to find those DLLs. IESHIMS.DLL is located under WinSxS directory tree, but not available for 32-bit clearquest.exe

But API-MS-WIN-CORE-SHUTDOWN-L1-1-1.DLL and EXT-MS-WIN-NTUSER-UICONTEXT-EXT-L1-1-0.DLL can not be found at all from Windows 8.1 system!

This is very strange because SETUPAPI.DLL (in System32 and SysWOW64) depends on API-MS-WIN-CORE-SHUTDOWN-L1-1-1.DLL (checked with "dumpbin /imports" command)!

And D3D11.DLL depends on the missing EXT-MS-WIN-NTUSER-UICONTEXT-EXT-L1-1-0.DLL.

I've tried to install ClearQuest again but it didn't help. I've also used "sfc /verifyonly" command, but it reports that everyhing is OK.

I've checked two other Windows 8.1 systems that have also been upgraded from Windows 8 and those files are missing also in those systems.

Is it really so that there are system files missing from Windows 8.1 upgrades?

Jari

Windows for home | Previous Windows versions | Performance and system failures

Locked Question. This question was migrated from the Microsoft Support Community. You can vote on whether it's helpful, but you can't add comments or replies or follow the question.

0 comments No comments
Answer accepted by question author
Anonymous
2014-08-01T19:26:39+00:00

Hi everybody, just found something really interesting.

I've just got an quite old game and tried to play it on my win8.1update, then received 0xc000007b :-(

DependencyWalker told me the missing of six dlls and I just can't find some of those on web QAQ 

So I tried to play it on another laptop with XP and I was informed that there is something wrong with xinput1_3.dll

After downloading that dll (for 32-bit system) from the internet, the game works properly in XP :-)

And surprisingly, when I turn back to win8.1, replacing the original xinput1_3.dll of win8.1update with the downloaded one, the game miraculously starts to run!!!

I don't know why it works, but it does work.

For your reference.

Good Luck,

Lichen

Was this answer helpful?

30+ people found this answer helpful.
0 comments No comments
Answer accepted by question author
Anonymous
2014-11-11T20:05:19+00:00

Hello!

I had problems with this API dll's missing with several 64 bit aplications

such as Magix video professional editor 2015 and Magix Samplitude 2015 along with

some programs from Native.

The solution for me was;

 Visual C++ Redistributable Packages for Visual Studio 2013

Download link:

http://www.microsoft.com/en-us/download/details.aspx?id=40784

I reinstalled (repaired) these 2 files and all programs worked

vcredist_x64.exe

vcredist_x86-exe

Hopefully You experience the same!

Was this answer helpful?

3 people found this answer helpful.
0 comments No comments

44 additional answers

Sort by: Most helpful
  1. Anonymous
    2013-12-19T23:05:14+00:00

    sorunun nedenini nedir?

    Was this answer helpful?

    0 comments No comments
  2. Anonymous
    2013-12-11T14:22:30+00:00

    I think like you that is a Operating System issue, as in my case the missing DLL are seen on a Microsoft product... Not an old one... as it is VisualStudio Express Desktop 2013 version from october!

    If we follow the given advise from Microsoft support, I should contact ............. tada ........ Microsoft VS team to Fix it as the system is "like that"! Quite funny.

    For information I am also in contact with Microsoft for a fix, but I am still on the state of sending traces (debug, Fiddler, Depends).

    Looking forward for a solution.

    Was this answer helpful?

    0 comments No comments
  3. Anonymous
    2013-12-11T13:34:26+00:00

    One month ago I opened a MSDN support case about this issue.

    Microsoft support has examined my system and discussed with Microsoft developers but they haven't been able to give me a solution to this problem.

    They insisted that I should contact the developers of this ClearQuest.exe program (i.e. IBM) so that they could upgrade this old program to link with correct libraries!

    However, my point in this problem report was not the ClearQuest.exe program itself, but the missing DLLs in the Windows 8.1.

    This ClearQuest.exe was just a program to demonstrate the problem. ClearQuest.exe seems to be written with Visual Studio 2005 and linked against standard Microsoft libraries, such as MFC80U.DLL.

    And now Windows 8.1 seems to break the compatibility with such old programs.

    Finally Microsoft support replied (and I quote): "Missing/Moved Stub dll files are part of the design of the operating system and is not certain to change in future."

    To me missing DLLs do not make sense of being "part of the design"!

    Besides the missing DLLs, there are also other strange relations between Windows 8.1 system DLLs, such as the following (revealed by using "dumpbin /imports" and "dumpbin /exports" command from Visual Studio kit):

    USER32.DLL would like to import function RegisterWaitForInputIdle from downlevel\API-MS-WIN-CORE-KERNEL32-PRIVATE-L1-1-1.DLL, but there’s no such function in that L1-1-1 version like there is in the L1-1-0 version of that DLL. So USER32.DLL seems to be linked with the content of the L1-1-0 library but with L1-1-1 name.

    However, USERENV.DLL imports the function PrivCopyFileExW from that same API-MS-WIN-CORE-KERNEL32-PRIVATE-L1-1-1.DLL, which is correct since that PrivCopyFileExW function is the ONLY function available from API-MS-WIN-CORE-KERNEL32-PRIVATE-L1-1-1.DLL! Besides that PrivCopyFileExW function was not available in API-MS-WIN-CORE-KERNEL32-PRIVATE-L1-1-0! So USERENV.DLL seems to be linked with the correct L1-1-1 library information.

    How can two Windows 8.1 DLLs expect completely different functions from that API-MS-WIN-CORE-KERNEL32-PRIVATE-L1-1-1.DLL?

    USER32.DLL and USERENV.DLL come from the same Windows 8.1 build version 6.3.9600.16384.

    To me it looks like something is messed up in Windows 8.1 DLL build system and with library references.

    But according to Microsoft, this is "part of the design of the operating system" ...

    Go figure ...

    Was this answer helpful?

    0 comments No comments