MATLAB Answers


Please help: Standalone application NOT working on Windows 7

Asked by Sourabh
on 12 Apr 2013

Hi, I have compiled a standalone application using Matlab 2008b release. The application goes out with MCR7.9 version. My operating system is 32-bit Windows XP. Now, if I deploy this application on a customer's system running on Windows XP, it works fine. If I deploy this application on another customer's system running on 64-bit Windows7 with no Matlab already installed, it installs MCR 7.9 and works fine. But if customer's system is running on 64-bit Windows7 and has Matlab release 2008b already installed on it, the stand-alone application installs MCR 7.9 but doesn't successfully get executed. It shows following error on DOS prompt:

" My Own Exception: Fatal error finding symbol mxCalcSingleSubscript_700 in C:\Windows\system32\libmx.dll Error: "

I can not find any duplicate libmx.dll file in C:\Windows\system32\ directory. The PATH environment variable seems to be correctly set to 'C:\Program Files\MATLAB\MATLAB Compiler Runtime\v79\bin\win32' where I can see libmx.dll file.

Why is MCR looking at C:\Windows\system32\ directory for libmx.dll file?

I am not sure what is going wrong. Two customers using windows 7 and Matlab already installed on their system reported same error related to libmx.dll.

Can someone please help?




Have you tested with Dependency Walker ?

on 12 Apr 2013

Thanks Walter.

I tried the Dependency Walker on my executable. I used 'start profiling' option of Dependency Walker, it showed me 3 errors.

1. MSVCR80.DLL Error Opening File. The system can not find specified file. This error comes as soon as I load my exe file to Dependency Walker.

2. HPPRFILER.DLL Error Opening File. The system can not find specified file.

3. IBFS32.DLL Error Opening File. The system can not find specified file.

Are these errors significant? I am not able to comprehend what they are about.



1 Answer

Answer by Image Analyst
on 12 Apr 2013


I would send him those files.

on 23 Apr 2013

IESHIMS.dll can be safely ignored

on 26 Apr 2013

NO!!!! Copying the DLL's wont help at all. The MSVCR80.DLL is a delay load dependency which is loaded at runtime. Delete that copied file ASAP and do a runtime profile and not a static analysis:

  1. download the dependencywalker here: (make sure the bitness of dependency walker matches the bitness of you compiled application)
  2. extract the archive and start the dependencywalker
  3. choose File -> open and select your application
  4. choose Profile -> start profiling (if this is greyed out, you downloaded the wrong bittedness of dependency walker. Start with i.) again)
  5. a window pops up
  6. press okay
  7. your applications should start/crash now
  8. after your application finished running/crashing choose File -> save as
  9. zip and upload the DWI file somewhere and post the link.

Join the 15-year community celebration.

Play games and win prizes!

Learn more
Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!