none
MSVCR100.dll was not found

    Вопрос

  • Hi all, I recently installed Visual Studo 2010 and got pretty used to it. Although I like the new compiler, I can't make programs for other OSes. I'm coding on Windows 7 x64 and read in the manual that I could write code for OS's XP and up. However when I wrote a simple hello world. When I run the program on my 7 machine it works. But when I run it on XP machines I get this error: This application has failed to start because MSVCR100.dll was not found. Re-installing the application may fix this problem. Any suggestions?

     

    13 октября 2010 г. 0:52

Все ответы

  • Microsoft Visual C++ 2010 Redistributable Package (x86) is missing on the XP machine. Install it to fix the problem.
    My next phone is Windows Phone 7 and my current browser is IE 9. Check IE9 testing center
    13 октября 2010 г. 1:03
  • So you're telling me that I have to install that on every single XP/Vista/7 machine that I run my program on? There has to be a better solution.
    13 октября 2010 г. 1:45
  • I am not sure what do you mean by better solution, however you have 3 options

    1) Do not refer this dll directly or indirectly in your application. In this case you just don't need it.

    2) Package it with your application and install it whereever your application is installed. Many many developers choose this.

    3) Install it from the link in my first post.

    Note: I am sure that you are not refering to this dll directly in your code as of now. Go back and check all the linked dlls which VS links for you by default and remove all of those which are not required.


    My next phone is Windows Phone 7 and my current browser is IE 9. Check IE9 testing center
    14 октября 2010 г. 1:15
  • Hi WindowzDev,

     

    Thank you for your post.

     

    Some questions need to clarify with you.

    -          Did your issue occur on all XP machines or some specific machines?

    -          Did your issue occur after you have deployed your project?

     

    I would recommend that you may verify if .NET Framework is installed correctly on your machine or not.

    Please check the following suggestions.

    please use Verification Tool to verify all versions of .NET Framework. If all versions of .Net Framework cannot be verified on your computer, you should uninstall .NET Framework and reinstall them again correctly on your machine. Then, please run your project again.

    See: http://social.msdn.microsoft.com/Forums/en-US/vssetup/thread/51573822-a6cc-4cf8-aaad-2899c8703438 for more similar issues like yours.

     

    If you have any issues, please feel free to let me know.

    CHEERS,

    Larcolais


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    14 октября 2010 г. 5:54
  • Some questions need to clarify with you.

    -           Did your issue occur on all XP machines or some specific machines?

    -           Did your issue occur after you have deployed your project?

    Yes this happened on a virtual machine running XP Pro and a Desktop running XP Pro. Both had the same result.

    Yes this happened the moment i wrote a simple printf("Hello World\n"); program.

    I ran that .NET Verification tool and all ran Successfully. So I don't know what else I can do. Prateek advised that I install that program to run code that doesn't have VS 2010 installed on it but seriously, I'm planning on sharing my program because I'm in a open source community where we share programs and having less technical people installing something that they don't understand isn't very viable. I've used Visual C++ 6 before and had no problems deploying programs under it, I don't  know why 2010 is being so difficult. Suggestions? Or am I gonna have to stick with DevC++

    18 октября 2010 г. 20:23
  • Hi WindowzDev,

     

    Glad to see your reply.

     

    Would you like to develop a C++ project?

    I would recommend you should check whether VC++ Runtime is installed correctly on client machines or not.

     

    Another hand, you could add a prerequisite Visual C++ Runtime when you deployed your project.

     

    The following link talks about how to deploy a Visual C++ app by using the Visual C++ Redist Package. http://msdn.microsoft.com/en-us/library/ms235285.aspx

     

    CHEERS,

    Larcolais

     


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    • Помечено в качестве ответа Larcolais Gong 20 октября 2010 г. 5:40
    • Снята пометка об ответе Larcolais Gong 17 ноября 2010 г. 2:17
    19 октября 2010 г. 1:42
  • Wel this isn't the entire visual studio, its just redist for that. You may want to Bing and find how to package the redist with your application. In that case, you will not have to install it separately.
    My next phone is Windows Phone 7 and my current browser is IE 9. Check IE9 testing center
    19 октября 2010 г. 1:55
  • Okay I know that the mods think that this question was answered but it wasn't, I had just stopped using VC++ 2010 for a while and now I'm forced to go back to it and never really resolved the initial problem.

    Prateek Kr Dubey: You mentioned this....

    1) Do not refer this dll directly or indirectly in your application. In this case you just don't need it.

     

    This may well be the answer, since I'm now using VC++ 2010 Express, how would I go about not using unnecessary .dll's ?

     

    EDIT:

     

    I have found the solution. In project properties under C/C++ -> Code Generation, select "Multithreaded" rather than "Multithreaded DLL".

     

    Moderators, you may now officially call this a solved thread with this post.

    16 ноября 2010 г. 17:40
  • Hi WindowzDev,

    Once you select Multi-threaded (/MT), the C++ Runtime library will be linked as Static Library. In this case, all the CRT library has been embedded into the application, therefore it will not require any extra CRT DLL to run. The disadvantage is that it will increase the size of the executable.

    If you still select Multi-threaded DLL (/MD), you have to deploy the CRT DLL to the target machine. Of cause, to install a VC++ Runtime Package (as Larcolais suggested) is the easiest solution. If you don’t want install it on target machine, you are also allowed to deploy the CRT DLL as a private assembly. For detail steps, please check article: How to: Deploy using XCopy.  

    If you have any concern, please let me know.

    Cheers,

    Yi

      

     


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    17 ноября 2010 г. 2:43
  • how do i retrieve msvcr100.dll and reinstall??tried several times with no luck

    3 апреля 2013 г. 17:13