locked
***.exe - Entry Point Not Found RRS feed

  • Question

  • Hi,

    I got the message with the title "***.exe - Entry Point Not Found" when I try to debug my program. The message body contain the following:

    "The procedure entry point ?Load@CMesh@@QAEHV?$CStringT@DV?$StrTraitMFC_DLL....could not be located in the dynamic link library MyNesh.dll"

    Actually I am trying to run a code that was written with VC++6 in VC++2010. I did a lot of modification to get rid of the compilation errors but I am stuck with this run time error. I tried tobuild my program with static linked library (/MTd), but still doesn't work!!!

    I am using DLL files and I managed to generate the DLL files by VC++2010.

    I am using DLL files and I managed to generate the DLL files using VC++2010. I am also using CString in my program.

    Thank you for your help

    Khalid


    Friday, June 10, 2011 6:15 PM

Answers

  • Khalid_na_is wrote:
    >
    >Thank you for your reply.
    >
    >Actually it is not clear for me to what should I do. I don't have
    >much experience in dealing with MFC as well as I am working in a code
    >that was developed by another colleague (he is not around at the moment).
     
    My GUESS is that you are trying to mix binaries that were compiled with
    VS2010, with binaries or libraries that were compiled with VC6.  Because
    CString is changed, any old binaries will not find the entry points they
    were looking for.
     
    The only real solution for that is to recompile everything in VS2010.
    --
    Tim Roberts, timr@probo.com
    Providenza & Boekelheide, Inc.
     

    Tim Roberts, DDK MVP Providenza & Boekelheide, Inc.
    • Marked as answer by Khalid_na_is Monday, June 13, 2011 9:11 PM
    Monday, June 13, 2011 12:22 AM

All replies

  • CString is no longer a class, it is now a template specialization. MFC classes are not binary compatible across versions. If you want to use MFC classes in exported function signature, make sure your DLL's client is using the same version of MFC.



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP

    Friday, June 10, 2011 7:20 PM
  • Thank you for your reply.

    Actually it is not clear for me to what should I do. I don't have much experience in dealing with MFC as well as I am working in a code that was developed by another colleague (he is not around at the moment). 

    I am not sure if I need to change the use of CString to CStringT in the whole code or there is no need. I also don't know how to make sure that my DLL's client is using the same version of MFC??

    Regards,

    Saturday, June 11, 2011 3:30 PM
  • Khalid_na_is wrote:
    >
    >Thank you for your reply.
    >
    >Actually it is not clear for me to what should I do. I don't have
    >much experience in dealing with MFC as well as I am working in a code
    >that was developed by another colleague (he is not around at the moment).
     
    My GUESS is that you are trying to mix binaries that were compiled with
    VS2010, with binaries or libraries that were compiled with VC6.  Because
    CString is changed, any old binaries will not find the entry points they
    were looking for.
     
    The only real solution for that is to recompile everything in VS2010.
    --
    Tim Roberts, timr@probo.com
    Providenza & Boekelheide, Inc.
     

    Tim Roberts, DDK MVP Providenza & Boekelheide, Inc.
    • Marked as answer by Khalid_na_is Monday, June 13, 2011 9:11 PM
    Monday, June 13, 2011 12:22 AM
  • Many thanks Sheng and Tim for your replies,,, The problem solved!!

    >The only real solution for that is to recompile everything in VS2010.

    This is correct, firstly I was rebuild the solution in VS2010 and I thought that removes everything and build it up again. BUT, I realized that it is not, and I have to remove everything MANUALLY from the release and debug folders. It works now after the manual removal and rebuilding the solution.

    Although this problem has been solved, I faced other problems afterwords. Form my little experience on the last two days, I may not recommend to upgrade the application that was written in VC6 to make it work in VC2010. Especially if this application is big.

    Thanks again for your replies
    Monday, June 13, 2011 9:10 PM