Welcome to MSDN Blogs Sign in | Join | Help

Visual C++ Libraries DLL Deployment

There have been lots of questions and concerns about deploying VC++ 2005 applications and what are the possible ways of deploying the VC++ Libraries.

Thanks to Sridhar Madhugiri on the VC++ Libraries team, here is a quick dump that can help in the deployment process.

Following discusses the deployment options available to deploy VC Libraries DLLs with a product. Online docs will be updated to incorporate this information.

 

Most of the information below is documented but spread across various topics.

 

General information: http://msdn2.microsoft.com/ms235316(en-US,VS.80).aspx Talks about some of the pros/cons of the options.

 

Servicing Concerns :

Irrespective of which option you use, any serious security issue will be deployed through Microsoft Update as a security update. You don’t have to release a patch to your product to deploy the fixed VC Libs DLLs.

 

Deployment Options :

1. Install to Winsxs Directory using MSMs merged into app setup.

2. Private Assembly install under app directory.

3. Install to Winsxs Directory using vcredist*.exe.

1. Install to Winsxs Directory using MSMs merged into app setup.

Merge Modules that install the DLLs to WinSXS can be found under Program Files\Common Files\Merge Modules. These MSMs can be merged into the app setup. Various Setup authoring tools are available and allow merging MSMs. Please refer to the Authoring tool documentation to determine how to merge the MSMs. Merge the required MSMs into the app setup.

 

Pros : Only deploy the assemblies that the app depends on.

Cons : App has to have its own setup, requires admin rights to install

 

ATL

X86 - Microsoft_VC80_ATL_x86.msm, policy_8_0_Microsoft_VC80_ATL_x86.msm

IA64 - Microsoft_VC80_ATL_x86_ia64.msm, policy_8_0_Microsoft_VC80_ATL_x86_ia64.msm

X64 - Microsoft_VC80_ATL_x86_x64.msm,policy_8_0_Microsoft_VC80_ATL_x86_x64.msm

 

CRT

X86 - Microsoft_VC80_CRT_x86.msm, policy_8_0_Microsoft_VC80_CRT_x86.msm

IA64 - Microsoft_VC80_CRT_x86_ia64.msm, policy_8_0_Microsoft_VC80_CRT_x86_ia64.msm

X64 - Microsoft_VC80_CRT_x86_x64.msm, policy_8_0_Microsoft_VC80_CRT_x86_x64.msm

 

MFC

X86 - Microsoft_VC80_MFC_x86.msm, policy_8_0_Microsoft_VC80_MFC_x86.msm

IA64 - Microsoft_VC80_MFC_x86_ia64.msm, policy_8_0_Microsoft_VC80_MFC_x86_ia64.msm

X64 - Microsoft_VC80_MFC_x86_x64.msm, policy_8_0_Microsoft_VC80_MFC_x86_x64.msm

 

OpenMP

X86 - Microsoft_VC80_OpenMP_x86.msm, policy_8_0_Microsoft_VC80_OpenMP_x86.msm

IA64 - Microsoft_VC80_OpenMP_x86_ia64.msm, policy_8_0_Microsoft_VC80_OpenMP_x86_ia64.msm

X64 - Microsoft_VC80_OpenMP_x86_x64.msm, policy_8_0_Microsoft_VC80_OpenMP_x86_x64.msm

 

MFCLOC

X86 - Microsoft_VC80_MFCLOC_x86.msm, policy_8_0_Microsoft_VC80_MFCLOC_x86.msm

IA64 - Microsoft_VC80_MFCLOC_x86_ia64.msm, policy_8_0_Microsoft_VC80_MFCLOC_x86_ia64.msm

X64 - Microsoft_VC80_MFCLOC_x86_x64.msm, policy_8_0_Microsoft_VC80_MFCLOC_x86_x64.msm

 

Debug DLLs cannot be redistributed. They are shipped with VC for debugging purposes. See Online VC Documentation for details

 

DebugCRT

X86 - Microsoft_VC80_DebugCRT_x86.msm, policy_8_0_Microsoft_VC80_DebugCRT_x86.msm

IA64 - Microsoft_VC80_DebugCRT_x86_ia64.msm, policy_8_0_Microsoft_VC80_DebugCRT_x86_ia64.msm

X64 - Microsoft_VC80_DebugCRT_x86_x64.msm, policy_8_0_Microsoft_VC80_DebugCRT_x86_x64.msm

 

DebugMFC

X86 - Microsoft_VC80_DebugMFC_x86.msm, policy_8_0_Microsoft_VC80_DebugMFC_x86.msm

IA64 - Microsoft_VC80_DebugMFC_x86_ia64.msm, policy_8_0_Microsoft_VC80_DebugMFC_x86_ia64.msm

X64 - Microsoft_VC80_DebugMFC_x86_x64.msm, policy_8_0_Microsoft_VC80_DebugMFC_x86_x64.msm

 

DebugOpenMP

X86 - Microsoft_VC80_DebugOpenMP_x86.msm, policy_8_0_Microsoft_VC80_DebugOpenMP_x86.msm

IA64 - Microsoft_VC80_DebugOpenMP_x86_ia64.msm, policy_8_0_Microsoft_VC80_DebugOpenMP_x86_ia64.msm

X64 - Microsoft_VC80_DebugOpenMP_x86_x64.msm, policy_8_0_Microsoft_VC80_DebugOpenMP_x86_x64.msm

 

http://msdn2.microsoft.com/ms235290(en-US,VS.80).aspx

2. Private Assembly install under app directory.

The VC Libs files can be installed under the app directory as a private assembly. The files required for the private assembly are under <VS install path>\vc\redist. Copy the required sub directories to the app directory.

 

Pros : App does not have a setup, xcopy deploy, Non admin install, Select the assemblies that the app uses, run from share

Cons : Not suitable when a product installs multiple binaries and these are installed in various directories (assembly has to be duplicated under each directory)

http://msdn2.microsoft.com/ms235291(en-US,VS.80).aspx 

3. Install to Winsxs Directory using vcredist*.exe.

vcredist*.exe found under <VS install path>\sdk. These are standalone exe that installs all the VC libs to WinSXS directory. It installs only the retail versions of the DLLs.

http://msdn2.microsoft.com/ms235291(en-US,VS.80).aspx

 

Pros : App does not require a Setup, Has to be installed on the machine once and multiple apps can use the central version.

 

Cons : Installs all the VC Libs DLLs irrespective of whether they are used by the app, requires admin rights to install

 

Thanks,

  Ayman Shoukry

  Program Manager

  VC++ Team

Published Tuesday, April 04, 2006 2:19 PM by AymanS

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

Wednesday, April 05, 2006 7:07 AM by Tuan Kuranes

# re: Visual C++ Libraries DLL Deployment

"requires admin rights to install" is indeed a big problem... and makes third option the only one for programs.

Can't we call a winxp service like "xp update" with some magic parameters to make it update automatically to those requirement  (or "here is a windows update link")

Best would be Xp already auto-install those requirements on every computer, so that only dev needs would be to annonce "your xp need to be updated..."
Wednesday, April 05, 2006 12:43 PM by AymanS

# re: Visual C++ Libraries DLL Deployment

As you probably know, the update is owned by the OS team. Nevertheless, I would highly encourage you to log your suggestion at http://lab.msdn.microsoft.com/productfeedback/default.aspx.

Thanks,
Ayman Shoukry
Thursday, April 13, 2006 7:56 AM by Olaf Zander

# re: Visual C++ Libraries DLL Deployment

What is the best way to determine if the run-time files are available already on the target machine? This would allow an intelligent setup program to tell the user to get and install vcredist*.exe or to automatically retrieve that if the user is online. Setup files would be kept small but still ensure full operation everywhere.

It is simply inefficient to think that tons of application setups will have to carry the runtime files when they are only needed once per target machine.
Thursday, May 11, 2006 9:04 AM by Javed

# re: Visual C++ Libraries DLL Deployment

I tried many methods but still i am not able to deploy my vc++ 2005 application. I installe IE6, then installed windows installer 3.1 redist, after that I installed vcredist_x86.exe. After doing all these my application is still not running. Then I manually copied CRT, MFC and ATL dlls along with manifest in the application folder.
And, my application still fails to start on other machine.
Please help me.
javed.h@gmail.com
Friday, May 12, 2006 2:34 PM by AymanS

# re: Visual C++ Libraries DLL Deployment

Could you raise the issue on the VC++ forums (http://forums.microsoft.com/MSDN/default.aspx?forumgroupid=8&siteid=1) so that myself and others can help. We will probably need more details though.

Thanks,
Ayman Shoukry
Sunday, June 11, 2006 7:55 PM by logisimo

# re: Visual C++ Libraries DLL Deployment

DLL Deployment could reach transparancy when enough data on the handle to the process is known, as well as what DLL's are loaded and unloaded. When the client makes a procedure call remotely, the server will dispatch that routine to perform the service and reply. If the machine is a different version, model, yet can be piped without defining network interface, the process context switch involves extracting the adress from the kernel environment protection block into the cr3 register. Each remote installtion by registering the DLL or remote procdure call, it involves a routing mechanism through which the request will be processed. If Windows Server 2003 updates both the local and the target, then ( I think, I'm not sure) the DLL, if not installed where DLL's are grouped on the target, could link to the procedure that used that DLL. Or the process on the remote culd be hooked and the DLL injected during the API hook. Normally,  all, except for one of the entry points into the DLL but  one are virtual functions. The dereferenced or indirect function call by the virtual function table holding the funcion that contains the function pointer prevents the caller to link against their symbolic names during the design phase. The keyword extern could be used to prevent symbolic differences by a global function that bootstraps the caller client Esentially, when out of the DLL heat, two systems could expect the import library from the DLL to export the same symbol. Therefore, deplying the DLL on a target machine. A module has both a public and private parts to keep details of implentation hidden and consequently avoid the linear level and use indirection, as if it were a hash search. The local machin thus has a runtime extended functionlity by objet interrogation. The output of these COM standard inputs is the DLL cazn decouple itself from the local C++ compiling. The Distributed Computing Environment (DCE) uses the IDL  compiler to Microsoft's Remote Procedure Call is designed for that very situation. Component access over transports ( without the network interface defining the pipe) and machine boundaries. This is evidentally due to reiturating the binary standard, and in pert to avoid the detail of the network interface. One may find a parallel in the PRC runtime library to fund a process and map to an endpoint as if it were a protocol defintion. The endpoints are in phase and on the same terms. Makes sure that contractual agreement is "binding".  
Friday, July 21, 2006 10:21 AM by dts

# re: Visual C++ Libraries DLL Deployment

Does a dll compiled on win 2000 can give problems while using those dlls on win 2003 server?
Wednesday, August 02, 2006 4:19 AM by deen

# re: Visual C++ Libraries DLL Deployment

This is realy anoying, the compiler should automatically add the files needed to run your applications you create on other machines or atleast provide updates on http://windowsupdate.microsoft.com/
It's my guess that they forgot about this problem and was too eager to get MS VS 2005 released. Most programmers want to get on creating their applications and continue learning with their desired language and not have to be dealing with work-arounds for something that should work anyway. MS VS 2003 was better by far, just my opinion.
thanks
Friday, August 11, 2006 11:38 AM by Jim Howard

# re: Visual C++ Libraries DLL Deployment

I'm trapped in some kind of dll hell since I've started trying to move my apps to VC8.  

I get random crashes on startup of several of my mfc apps with the message "The application failed to initialize properly (0xc0000034)".  This crash happens as soon as kernel32.dll loads, long before the debugger becomes useful.
Sunday, December 10, 2006 7:31 PM by John Miller

# re: Visual C++ Libraries DLL Deployment

This is ridiculously complicated.

I have wasted THREE days of development time trying to get our software to install on Vista RTM.  I have followed all the advice and have made no progress.

My installer package contains the merge modules for the latest MSVCRT80 and ATL80.  This merge modules FAIL TO INSTALL on Vista.

They install just fine on XP Pro - both 32- and 64-bit.

I never had this trouble with Visual Studio .NET 2003.  Only since porting to .NET 2005.

And now, out-of-the-blue, the installer package has somehow decided that .NET Framework 2.0 is needed - it's all unmanaged code.

Saturday, January 13, 2007 2:37 PM by mcfh

# re: Visual C++ Libraries DLL Deployment

You don't appear to have updated the merge modules for SP1 only the vcredist*.exe

Monday, January 29, 2007 4:06 PM by JongAm Park

# re: Visual C++ Libraries DLL Deployment

Can you explain me why this happens and how to resolve it?

I posted my question here.

http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1158230&SiteID=1

Thank you.

P.S. Delay loading didn't help. At the point when it loads a dll, it displays the error message.

# JLinX - Blog &raquo; Blog Archive &raquo; Visual C++ Libraries DLL Deployment

Friday, February 23, 2007 10:10 AM by Jeff Lynn

# re: Visual C++ Libraries DLL Deployment

A very simple C++ program compiled under VC 2005 failed to deploy on my Windows 2003 server.  Got the following error while installing the vcredist_x86.exe:

Error 1723:  There is a problem with this Windows Installer package.  A DLL required for this install to complete could not be run.  

Contact your support personnel or package vendor.

Any idea how to resolve this?

Jeff

Friday, February 23, 2007 3:41 PM by Jeff

# re: Visual C++ Libraries DLL Deployment

I found it.  I ended up have to install the latest copy of Windows Installer 3.1 prior to installing the VCRedist_x86.exe.

JML

Thursday, April 05, 2007 6:06 PM by marcos

# re: Visual C++ Libraries DLL Deployment

I there sp1 release for the c++ redit libraries??

Friday, April 06, 2007 6:50 PM by William A. Miller II

# re: Visual C++ Libraries DLL Deployment

I found that that even with all of the latest Visual Studio 2005 updates in place.  The redistributable vcredist_x86 located in C:\Program Files\Microsoft.NET\SDK\v2.0\Bootstrapper\Packages\vcredist_x86.exe is dated 12/2/2006 and installs what appears to be the latest version of the DLLs.  But the Microsoft_VC80_CRT_x86.msm and Microsoft_VC80_MFC_x86.msm located in C:\Program Files\Common Files\Merge Modules\ are dated as 5/16/2006 whic are installing Beta verrsions of the DLLs.  THe X64 versions of these MSMs are dated 12/2/2006 so I assume that either something went wrong with an update or the non x64 versions were left out of an update.

Are there updated MSMs available and how do I get them?

Tuesday, April 10, 2007 7:07 AM by Anton Balzer

# re: Visual C++ Libraries DLL Deployment

Wait, wait, wait... Let me get this straight.

I have to install all these DLL's and the redist-package on EVERY single machine i want to run my application on?

Is this the death of VC++ or did i misunderstand?

Tuesday, April 10, 2007 7:07 AM by Anton Balzer

# re: Visual C++ Libraries DLL Deployment

Wait, wait, wait... Let me get this straight.

I have to install all these DLL's and the redist-package on EVERY single machine i want to run my application on?

Is this the death of VC++ or did i misunderstand?

Monday, April 23, 2007 6:39 AM by chandra

# re: Visual C++ Libraries DLL Deployment

how should i call a third party dll in an MFC application.please send me steps for it.

Thursday, May 03, 2007 12:57 PM by Murali Tummala

# re: Visual C++ Libraries DLL Deployment

With VS SP1,  most of manifest files have been updated but,

C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86\Microsoft.VC80.ATL\Microsoft.VC80.ATL.manifest

is still old (dated 9/23/2005)it still has

version="8.0.50608.0"

Tuesday, May 08, 2007 8:45 AM by Thalha

# re: Visual C++ Libraries DLL Deployment

whats the basic difference between win32 dll and COM dll?

Monday, June 04, 2007 5:27 AM by Stewart Clark

# re: Active Sync MSM

Where do I find a MSM for ActiveSync so that my VS 2005 installer will install ActiveSync for my application that Ihave developed using VS 2005?

Stewart

Friday, September 21, 2007 12:06 PM by Domican Terce

# re: Visual C++ Libraries DLL Deployment

Is there any way to statically link to CRT library so that applications can run on end user's XP without do any thing extra?

If not, and you need to install/copy something before you can run your apps created VS 2005,  I would say that VS 2005 does not support XP or XP does not support VS 2005; and if you want your apps to run on XPs, then don't use VS 2005.

Tuesday, October 02, 2007 8:22 PM by Kernel Mutex

# re: Visual C++ Libraries DLL Deployment

I just static link to everything. ATL also if I'm making a COM server.

Use WTL instead of MFC (MFC is sort of legacy these days). Guys, lets move forward here - not backward.

Thursday, October 11, 2007 2:26 PM by No thanks

# re: Visual C++ Libraries DLL Deployment

I'm sticking with VS2003. You guys have completely, UTTERLY messed this up.

Simplify. Simplify. Simplify the deployment process!

Saturday, October 13, 2007 3:21 AM by Kernel Mutex

# re: Visual C++ Libraries DLL Deployment

Good idea No thanks. Sticking with version 7.1 of the runtimes will give you more robust apps. I found the VC 8.0 runtimes somewhat buggy. Especially when calling COM interfaces from Win32 apps. First Chance Exceptions were getting out of step with CoUninit... 15 minutes after my app was closed - up would pop a message saying the runtime terminated in a queer way!! How could I ship that to paying customers?!?! :-|

Monday, October 15, 2007 1:04 AM by Joe

# re: Visual C++ Libraries DLL Deployment

This is a total mess. The Visual Studio project generates errors and installs every stupid DLL for each merge module, not just the latest one I'm compiling against. Instead of a 600K install, I have a 5MB install.

Unfortunately, nothing will be done like always. Can't you people do anything right?

Saturday, November 24, 2007 6:05 AM by Helga

# Tauno.Turunen@sgo.fi

Tuesday, December 04, 2007 9:45 PM by Georges

# re: Visual C++ Libraries DLL Deployment

I've found that the redistribution installer returns instantly and the installation proceeds in the background.

While this is cute (the author probably thought he was a great coder, using external processes & all), this is a nightmare for 3rd party trying to include this installer within their own installer. You can not easily know when the install actually completes. You can run into issues when you try to install other things afterwards (with errors from the installer, because other installs are still running), or, in my case, you can't have a script install this then move on & restart the machine as the installer might still be working (thanks to XP Embedded & it's broken shutdown process that doesn't close all processes cleanly...)

Now, how can make this installer be a team player and only "exit" when it is really done?

thanks!

Wednesday, February 13, 2008 5:58 PM by David

# re: Visual C++ Libraries DLL Deployment

I have only just started a project with VS 2008!

Should I abandon my effort right now given what I have been seeing here? I have been developing it on a Vista machine and would like the exe to work on XP too!

Am I insane to try this?

Thursday, February 14, 2008 11:57 PM by Aviral

# re: Visual C++ Libraries DLL Deployment

Can somebody tell me when do we get the following error:

Program 'file_name.dll' failed to load. Error 14001

please reply soon...

Thanks in advance

Thursday, March 13, 2008 3:19 PM by Toni

# re: Visual C++ Libraries DLL Deployment

i'm also experiencing the same problem as all the people have.

Error: The Side-by-side configuration information.......(14001)

Warning: Atleast one module has an unresolved import due to a missing export function.....

- i tried to install the vcredist.exe but

 nothing happens.

- i copied all necessary dlls to their

 respective directories but still nothing

 happens.

- i tried to change the Embed Manifest from

 its default which is Yes to No but it gave

 me another error.

can someone help me with my issue?

# Jochen Kalmbach&#8217;s Blog &raquo; Blog Archive &raquo; Main disadvantage of (really) AppLocal deployment

Friday, May 23, 2008 2:04 PM by GerOD

# re: Visual C++ Libraries DLL Deployment

Could somebody from Microsoft please clarify this?

With the manifest embedded inside the .exe file, an isolated assembly works on XP but not on Windows 2003.

By isolated I mean a folder structure like this:

MyFolder\

MyApp.exe

Microsoft.VC80.MFC\

<manifest file>

<mfc dll>

Sunday, June 29, 2008 2:37 AM by vbsecure

# re: Visual C++ Libraries DLL Deployment

How can i load differernt DLL with same name in single executable, plz relpy me.

Tuesday, July 22, 2008 5:09 AM by Dani Peer

# How do I know that C Runtime was installed ?

Hi,

I'm creating a setup that will install the following:

1. .NET 2.0 SP1

2. CRT (C Runtime Library)

3. An ActiveX.

I have 2 questions:

1. How do I know that CRT was already installed ?

2. Can I install CRT in "silent mode" ?

Sunday, August 03, 2008 4:46 PM by Farzan Doroodgar

# re: Visual C++ Libraries DLL Deployment

To run your vc++ 2005-08 applications on another machine do as following:

1- select a project from solution explorer

2- choose "Propertise" from "Project" menu;

3- expand "C/C++" node and select "Code Generation" from left pane

4- change "Runtime Library" to "Multi-threaded DLL (/MD)" from right pane.

you must do all of these steps for any project exist in your solution and at the end rebuild your soultion using "Build" menu.

the next thing you need to run your apps on another machine is that the target machine must have .Net Framework installed with the same version of your apps.

you can find your targeted framework version by doing the steps 1 and 2 and then:

3- expand "Common Propertise" and select "Framework and Refrences" from left pane.

4- In the right pane you can find your targeted frame work from a combobox and you can change it.

Sorry for my bad english

Tuesday, September 23, 2008 7:11 AM by Phil Anderson

# VS 2008 SP1 problems

I wasted a lot of time in the last day with our installer, which I managed to track down to the fact that VS2008 SP1 links against the RTM CRT & MFCs unless you use the _BIND_TO_CURRENT_VCLIBS_VERSION macro.  One of the many problems with this, is that when you install VS 2008 SP1, it replaces the MSM files with the new version of the CRT/MFC/ATL dlls.

Am I missing something, or does this mean VS 2008 SP1 in it's shipped configuration creating unworkable installers?

I'm now trying to decide if I should manually roll back the MSM files, or if I should update all 100 of our projects to include the _BIND_TO_CURRENT_VCLIBS_VERSION macro.

How have others delt with this?  I'm new to all this SxS & manifest stuff, so please excuse me if I have missed something obvious.

Monday, October 06, 2008 7:37 PM by Antonio Pellizzaro

# re: Visual C++ Libraries DLL Deployment

Hello, I see a lot of questions, no answers. Hopefully someone will be able to answer my question. VS 2008 RTM, I am including the all the MSM (atl,crt,mfc,openMP) in my installation, works great in XP, but on VISTA, I get erros at the end of the installation wehn registering the dlls: cannot lod file. I let the installation finish, try to manually register the dlls: it works!!

If I run vcredist.exe before hand, everything works fine.

Is there anyhting that vcredist.exe does, that the msm do not do?

Thanks in Advance

Antonio

antonio dot pellizzaro at autodesk

Thursday, October 16, 2008 3:10 AM by sumanknm

# re: Visual C++ Libraries DLL Deployment

In my application I have Used some microsoft VC++ dll's also along with .net dll's.

Now Iam getting "RUNTime Error" pop-up screen message as below

" The Application has been terminated in an Unusual Way"

On googling i came to know that some dll's like msvcrt.dll of windows server 2003 has to be changed...But Iam not pretty sure about it..

In Production/test environment there is only framework installed ,but there is no visual studio installed on it.may be due that this error may occur...

So kindly post your suggestions and views to help me

I tried to resolve by following ways but failed to achieve ot

1. I have installled the redistributable package suggested by you.

after installing i restarted the PC even now also I got the same runtime pop-up error.

2. Then I checked even with the dependency walker for the dll.

I found that there is no miising dll.

3. Then I tried by installing Visual C++ express edition..even then also i got the same pop-up error.

Kindly help me.....

Tuesday, October 21, 2008 9:00 AM by rbroadbridge

# re: Visual C++ Libraries DLL Deployment

This is probably simple for you chaps.

I have a VC++ program which requires the MFC and CRT dlls to run.

I compile the program using cl/clr.

I generate signed application and deployment manifests using mage.

I am trying to deploy it using ClickOnce.

I have used ClickOnce successfully in a previous version of my program which didn't need the MFC components.

My ClickOnce install fails on a clean target with an error (eg) "Cannot copy mfc90.dll - file already exists"

I believe it's because it (a) reads the microsoft.vc90.mfc manifest, and then installs the dlls' referenced in this manifest; and then (b) tries to

copy the dll's again because they are seperately defined in the ClickOnce application manifest.

If I don't include the MFC dll's (eg mfc90.dll) in the distribution folder, then the install fails because it can't find the required components of

microsoft.vc90.mfc.

And if I do include the dll's it tries to copy them twice and fails!

All help appreciated...

Friday, October 31, 2008 7:13 AM by thomasp

# re: Visual C++ Libraries DLL Deployment

I chose the second way to deploy my app : 2. Private Assembly install under app directory.

But even with my VS redist Microsoft.VC80.CRT folder copied in the same directory as my app (on a computer without visual), it doesn't work

I'm sure thousands of people already had the same problem, could you help me please i already spent too much time to try making this work !!

Thursday, November 20, 2008 11:07 AM by cbuck

# re: Visual C++ Libraries DLL Deployment

With Borland's products, when you start the application it will inform you that it cannot find a required DLL and will even give you the name of the DLL file it could not find. So you go out, find the file, copy it to the application directory, and try again. After several iterations of this you have all of the necessary run-time libraries installed and the application runs.

With VC Express, however, when you try to run your application you get the helpful message: "The system cannot execute the specified program." Then you spend the next several days trying to track down real source of the problem. Is it missing DLLs? Different versions of DLLs? A manifest problem? Some combination? None of the above?

COME ON GUYS! YOU NEED TO FIGURE THIS OUT! Write a tech sheet with step-by-step instructions how to deploy an application. Seriously, why can't the IDE create a deployment folder with everything the application needs to run? THIS SHOULD NOT BE THIS DIFFICULT! Everyone needs to deploy their apps to a PC without the IDE installed. You need to make this easy.

My question: What do I need to do to make my simple console program work on a computer without installing VS?

Leave a Comment

(required) 
required 
(required) 
 
Page view tracker