473,382 Members | 1,814 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,382 software developers and data experts.

Where should the VC runtimes be installed to?

In reference to the following post by Brandon Bray from Microsoft:

http://groups.google.com/groups?q=g:...%40tkmsftngp04

Among other things, the thread talks about the C Runtime files such as
MSVCR71.DLL, and seems to indicate that they should be installed in
our applications directory, and not in the System32 directory.
Specifically, Brandon states the following about installing the C
Runtime library in the System32 directory:
Basically, we don't want these files to fall under system file protection.If that were to happen, these DLLs are either "known DLLs" or transitivelyso. If this were to happen, only the operating system could service thesefiles and doing so would be incredibly difficult for app compatibility.It's just better that every application use its own version of these DLLs bystoring them with the rest of the files in the application directory. Thatway the application is guaranteed to remain working even if the CRT or MFCis serviced in other applications.

--
Cheerio!
Brandon Bray Program Manager in the Visual C++

Compiler Team

I created a merge module for our application which installs in lets
say \Program Files\OurApp. Our merge module has a dependancy on the
MSVCR71.DLL merge module VC_USER_ATL_RTL_X86_---.MSM. As well as
using our merge module within our own installation, we also give it
out to third parties who write thier own application which integrate
with our application. They would then write thier own installation
program which would install thier application to \Program
Files\ThierApp, and would include our merge module for our product
functionality. During installation, thier application is installed to
\Program files\ThierApp, and our components are installed to \Program
Files\OurApp (as directed by our merge module).

Both our application and thier application requires MSVCR71.DLL, and
in the past the install program would simply install MSVCR71.DLL to
the System32 directory. However, if it is Microsofts desire for us to
install the C Runtime library into our own application directories,
then it will be necessary to copy the file to both application
directories. The problem is that MSI does not provide any way to
retarget a merge module to more than one location.

This issue raises the following questions:

1. Where can I find an official anouncement from Microsoft indicating
that we should be installing the C Runtime in our application
directory, instead of the System32 directory?

2. Using the example given above, how can we retarget the C Runtime
merge modules so that they can be installed in both application
directories?

3. If applications are required to install the C Runtime into thier
own application directory, then why is Visual Studio not obeying the
rule, and instead installing MSVCR71.DLL into the System32 directory?

4. Is it safe for us to continue to install MSVCR71.DLL to the
System32 directory, using Microsofts merge module
VC_USER_CRT_RTL_X86_---.MSM?

Regards,
Sijmen.
Nov 16 '05 #1
0 12608

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Craig Cookesley | last post by:
Hi I have written an application using Delphi 6 and Interbase 7 basically it use external tables to read and write an external file (basic text file) My problem is strange and I can not...
0
by: blznsky | last post by:
Hello, Is there any way or some statistics somewhere that can ruffly show the number of computers on the internet with the .Net 1.0 or higher runtimes installed?
16
by: deko | last post by:
Is there any reason, other than the distributable Access runtime, to use Office XP developer? I tried installing it on my system, but apparently I need to install/update a bunch of components -...
0
by: C.Dimitrov | last post by:
Hi, We have this on a production server same as test server running Windows 2003 Standard SP1 with .NET SP1 installed. and the same application on the production server return this, when loading...
36
by: Alex Martelli | last post by:
So, I thought I'd tool up to let me build and test Python extensions on Windows (as well as Mac and Linux) -- I'm trying out Parallels Workstation beta on my new Macbook Pro (and so far it seems to...
5
by: salad | last post by:
Is it preferable to create runtimes when distributing apps or preferable to expect the client to have valid versions of Office with Access on it. I have an app that requires Word and Outlook. So...
1
by: Neeraj | last post by:
Hi all. I have stuck at a strange point.in Database some master table have identity column and some havenot. Then How can i know at runtimes that which table have identity column. According to...
0
by: Ralf Abramowitsch | last post by:
Hi, I'm writing a trouble shooting utility that checks my assembly references. It creates a report for the support. Now I want to add some routines to check for installed runtimes. Ok, the...
11
by: pg | last post by:
My old HD crashes, so I had to do a total re-install. After installer XP, I went to the Micrsoft Update site to get all the update. After 5 hours or so ... the update cycle started looping. ...
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
by: ryjfgjl | last post by:
In our work, we often need to import Excel data into databases (such as MySQL, SQL Server, Oracle) for data analysis and processing. Usually, we use database tools like Navicat or the Excel import...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.