locked
Applis crash in W8 CP : missing api's dlls

    Question

  • Hello, when I try running some programs which perfectly work on Win7 x64, after installing every prerequirements I get some error and crash. So I looked for missing dlls with Dependency Walker and I found that there were a lot of missing api's dlls, can you help me solving that problem, because I maybe missed an important step, and my applications cannot start.

    Some of the missing dlls :

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

    API-MS-WIN-CORE-COM-PRIVATE-L1-1-0.DLL

    API-MS-WIN-CORE-COM-L1-1-0.DLL

    API-MS-WIN-CORE-CRT-L1-1-0.DLL

    API-MS-WIN-CORE-PSAPIANSI-L1-1-0.DLL

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

    API-MS-WIN-NTUSER-RECTANGLE-L1-1-0.DLL

    API-MS-WIN-NTUSER-SYSPARAMS-L1-1-0.DLL

    EXT-MS-WIN-NTUSER-DC-ACCESS-EXT-L1-1-0.DLL

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

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

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

    ...

    etc

    Thanks a lot,

    Mathias

    Monday, March 05, 2012 8:28 PM

All replies

  • I have a problem with an application that also worked in earlier versions of Windows.  The application starts to open then crashes unexpectedly.  The event viewer points to mfc42.dll, and I used Dependancy Walker to come to the same conclusion: there are a lot of missing DLLs on Windows 8.  Interestingly enough, I do not see those on my Windows 7 machine, either.  I noticed the version of MFC42.DLL on Windows 8 was 6.6.8063, while my Windows 7 box said 6.6.8064.  I tried copying the Windows 7 version to the Windows 8 box (after changing permissions to allow the replacement), but it made no difference.  I also re-registered the DLL, but it didn't help, either.

    If I find a fix for this, I will post back.  Will you do the same?


    Sr System Engineer

    Tuesday, March 06, 2012 10:02 PM
  • By the way, I am not a developer, so much of this is foreign to me, but this may or may not be related...http://msdn.microsoft.com/en-us/library/hh802935(v=vs.85).aspx

    Sr System Engineer

    Tuesday, March 06, 2012 10:05 PM
  • I'm seeing the same issue with several of our applications under Windows 8.

    I installed the Windows 8 build 8250 sxs and SDK and still no dll's. The missing files are not hidden either.

    I do see the files on my Windows 7 system.

    Thanks,

    Ed

    Tuesday, March 06, 2012 11:38 PM
  • The list of missing DLLs I see in Dependancy Walker is as follows.  I figured since it was broken anyway, I would just replace the parent DLLs to remove the dependancies.  As it turns out, kernel32, user32, and other fairly important DLLs are in this list, so it looks like, and someone correct me if I am mistaken, the Win8 CP has system DLLs that have dependant DLLs that don't exist.  I'm still trying to find these somewhere else to see if copying them to System32 solves my problem...

    Module
    -----------------------------------------------------------------------------------------------------------------------
    API-MS-WIN-CORE-COM-L1-1-0.DLL
    API-MS-WIN-CORE-COM-PRIVATE-L1-1-0.DLL
    API-MS-WIN-CORE-FILE-L1-1-1.DLL
    API-MS-WIN-CORE-PROCESSENVIRONMENT-L1-1-1.DLL
    API-MS-WIN-CORE-PSAPIANSI-L1-1-0.DLL
    API-MS-WIN-CORE-STRINGANSI-L1-1-0.DLL
    API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL
    API-MS-WIN-OBSOLETE-PSAPI-L1-1-0.DLL
    API-MS-WIN-APPMODEL-IDENTITY-L1-1-0.DLL
    API-MS-WIN-APPMODEL-RUNTIME-L1-1-0.DLL
    API-MS-WIN-APPMODEL-STATE-L1-1-0.DLL
    API-MS-WIN-CORE-CRT-L1-1-0.DLL
    API-MS-WIN-CORE-PSM-APP-L1-1-0.DLL
    API-MS-WIN-CORE-VERSION-PRIVATE-L1-1-0.DLL
    API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL
    API-MS-WIN-CORE-WINRT-ERRORPRIVATE-L1-1-0.DLL
    API-MS-WIN-CORE-WINRT-L1-1-0.DLL
    API-MS-WIN-CORE-WINRT-REGISTRATION-L1-1-0.DLL
    API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL
    API-MS-WIN-DOWNLEVEL-ADVAPI32-L1-1-0.DLL
    API-MS-WIN-DOWNLEVEL-ADVAPI32-L2-1-0.DLL
    API-MS-WIN-DOWNLEVEL-NORMALIZ-L1-1-0.DLL
    API-MS-WIN-DOWNLEVEL-OLE32-L1-1-0.DLL
    API-MS-WIN-DX-D3DKMT-L1-1-0.DLL
    API-MS-WIN-MM-JOYSTICK-L1-1-0.DLL
    API-MS-WIN-MM-MISC-L1-1-0.DLL
    API-MS-WIN-MM-MISC-L2-1-0.DLL
    API-MS-WIN-MM-MME-L1-1-0.DLL
    API-MS-WIN-MM-TIME-L1-1-0.DLL
    API-MS-WIN-NTUSER-DC-ACCESS-L1-1-0.DLL
    API-MS-WIN-NTUSER-RECTANGLE-L1-1-0.DLL
    API-MS-WIN-NTUSER-SYSPARAMS-L1-1-0.DLL
    API-MS-WIN-SECURITY-CREDENTIALS-L2-1-0.DLL
    EXT-MS-WIN-NTUSER-DC-ACCESS-EXT-L1-1-0.DLL
    EXT-MS-WIN-NTUSER-MESSAGE-L1-1-0.DLL
    EXT-MS-WIN-NTUSER-MISC-L1-1-0.DLL
    EXT-MS-WIN-NTUSER-PRIVATE-L1-1-0.DLL
    EXT-MS-WIN-NTUSER-SYSPARAMS-EXT-L1-1-0.DLL
    EXT-MS-WIN-NTUSER-WINDOW-L1-1-0.DLL
    EXT-MS-WIN-NTUSER-WINDOWCLASS-L1-1-0.DLL
    EXT-MS-WIN-NTUSER-WINDOWSTATION-L1-1-0.DLL
    EXT-MS-WIN-SECURITY-CREDUI-L1-1-0.DLL
    EXT-MS-WIN-WLAN-ONEXUI-L1-1-0.DLL
    IESHIMS.DLL

    Sr System Engineer

    Wednesday, March 07, 2012 4:47 PM
  • I am seeing this problem as well trying to run the 64-bit version of an executable. The 32-bit version runs fine. Depends.exe reports the exact same missing dlls for me.
    Monday, March 12, 2012 7:46 PM
  • which 64bit applications do you try to run?

    "A programmer is just a tool which converts caffeine into code"

    Monday, March 12, 2012 8:22 PM
  • I am running a proprietary application, the Xilinx ISE command-line tools (http://www.xilinx.com/support/download/index.htm). They do not officially support windows 8, of course, but I was checking to see if their tools worked anyways. The 32-bit ones appear to, but not the 64-bit ones. The actual error when running them is 0xc0000142, which means STATUS_DLL_INIT_FAILED (http://msdn.microsoft.com/en-us/library/cc704588(v=prot.10).aspx), and when I open one of the executables with depends.exe I see the exact same missing dependencies as reported by Mathias.

    The problem is, the 32-bit versions work fine, but depends.exe reports a similar, though not identical, list of missing dependencies, so I don't think depends.exe can be trusted at all here. I am of course running the 32-bit version of depends.exe on the 32-bit executables and the 64-bit version on the 64-bit executables.

    As a final side note, I can run other 64-bit applications, so this may have nothing to do with 32-bit vs 64-bit in the general case.

    Tuesday, March 13, 2012 2:46 PM
  • That is interesting, indeed.  In my case, I had a customer that upgraded from XP (32-bit) to Windows 8 CP (32-bit), which promptly broke an already installed application.  I spent some time troubleshooting the problem while he looked for installation media and he ultimately ended up uninstalling and reinstalling the application, which fixed his problem.  The reason I went straight to depends.exe is because of the error I saw in the Event Viewer blaming mfc42.dll for the crash.

    Sr System Engineer

    Tuesday, March 13, 2012 2:50 PM
  • I'm having the same problem here, with a proprietary tool. Any update on this topic? I tried installing the win8 SDK mentioned elsewhere in this thread, but to no avail..
    Wednesday, March 21, 2012 2:04 PM
  • The Windows 8 SDK does not seem to include the missing DLLs.  In fact, I never did find them anywhere at all.  Like I mentioned in my last post, simply uninstalling and reinstalling the faulty application appeared to correct the issue for me.  Have you tried running the installer and/or the executable with different compatibility mode settings?  Of the third-party compatibility issues I have run into on Windows 8 so far, I have had to manually copy program files from a working Windows 7 machine, make registry edits, run installers in Windows 7 compatibility mode, and run executables in Windows 7 compatibility mode.  Without knowing what you are having trouble with, I doubt I can help much more than compatibility mode.  Is it something so proprietary you cannot share the installer for someone else to test on their own box?

    Sr System Engineer | Vision One IT Consulting | www.v1corp.com

    Wednesday, March 21, 2012 2:33 PM
  • Hello,

    Derek The information you posted is very help however maybe i'm one of the few that still has issues. I am the developer of the application that is having issue. i have ensured that my application is not calling the library in the link you provided. program runs fine on windows 7 but crashes immediately on windows 8. so far our application does not need an installer so i have been copy/pasting files onto the device. however no luck so far.

    thanks for the information. if anyone figures this out i'd be much appreciated if they posted the result.

    Monday, May 14, 2012 9:24 AM
  • Is your application calling MFC42.DLL?  That DLL is the one that had missing dependencies, but I don't know if that was the real problem or not.  In the end, my issue was resolved by uninstalling and reinstalling, but it sounds like you already tried that.

    Are you getting the 0xc0000142 error as mentioned by sreque above?  If so, I think that might be related to compatibility flags or UAC.  I had issues with GoToAssist Express on Windows 8 throwing the same error, and my 'fix' was to search the registry for references to the .EXE files and deleting them from "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant" and "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers".

    There is a long thread regarding this error and the workaround for GoToAssist here: http://social.technet.microsoft.com/Forums/en/w8itproappcompat/thread/e3824ddd-2f49-4050-955c-9aa16a5def10


    Sr System Engineer | Vision One IT Consulting | www.v1corp.com

    Monday, May 14, 2012 2:36 PM
  • Derek,

    I apologize. as it turns out our application was an opengl application and apparently the default MS opengl implementation on windows 8 is NO implementation. so as soon as we called an opengl function since they were all NULL we crashed. we were looking to port our engine to directx anyway for the windows store so it looks like this is the push we needed. a little strange though they decided not to have a GL implementation at all.

    once again i apologize.

    Thursday, May 17, 2012 3:52 AM