can someone shed some light, what is the difference? Why MS decided to
change the name?
Ciao Jan
--
MichKa
Michael Kaplan
Trigeminal Software, Inc. -- http://www.trigeminal.com/
International VB? -- http://www.i18nWithVB.com/
C++? MSLU -- http://msdn.microsoft.com/msdnmag/issues/01/10/
"Jan Bares" <jan....@ante.cz.no.spam> wrote in message
news:#fikV8DwBHA.2100@tkmsftngp07...
Best regards, Jan
A system file is one that is now a part of the system -- it comes with the
OS now. Just like kernel32.dll or ntdll.dll or any other file that is
installed by Windows.
Since Win95 is not supported, I do not think you can ever distribute 7.0
apps to it? I have no idea if it works or not in non-managed apps (in
managed apps it definitely fails).
--
MichKa
Michael Kaplan
Trigeminal Software, Inc. -- http://www.trigeminal.com/
International VB? -- http://www.i18nWithVB.com/
C++? MSLU -- http://msdn.microsoft.com/msdnmag/issues/01/10/
"Jan Bares" <jan....@ante.cz.no.spam> wrote in message
news:uDgDauGwBHA.2020@tkmsftngp02...
If you statically link, you can distribute your 7.0 apps to any Win32
platform.
todd
"Michael (michka) Kaplan" <forme...@nospam.trigeminal.spamless.com> wrote
in message news:eKhltxGwBHA.2592@tkmsftngp05...
Regards, Jan
--
MichKa
Michael Kaplan
Trigeminal Software, Inc. -- http://www.trigeminal.com/
International VB? -- http://www.i18nWithVB.com/
C++? MSLU -- http://msdn.microsoft.com/msdnmag/issues/01/10/
"Jan Bares" <jan....@ante.cz.no.spam> wrote in message
news:u5dLqHQwBHA.2020@tkmsftngp02...
Jan
"Michael (michka) Kaplan" <forme...@nospam.trigeminal.spamless.com> wrote
in message news:ewBiczRwBHA.2560@tkmsftngp07...
If redist.txt has the file than you can redistribute it.
--
MichKa
Michael Kaplan
Trigeminal Software, Inc. -- http://www.trigeminal.com/
International VB? -- http://www.i18nWithVB.com/
C++? MSLU -- http://msdn.microsoft.com/msdnmag/issues/01/10/
"Jan Bares" <jan....@ante.cz.no.spam> wrote in message
news:e5ivq$TwBHA.2592@tkmsftngp04...
Ronald Laeremans
Visual C++ compiler team
"Jan Bares" <jan....@ante.cz.no.spam> wrote in message
news:u5dLqHQwBHA.2020@tkmsftngp02...
But I have another problem. Brandon Bray mentioned that msvcr70.dll is
intended to be redistributed
with the application -- it should be installed in the application directory.
I tried to search this statement in the official documentation from
Microsoft, but found nothing. Is this true?
Best regards Jan
Hi Jan,
Yes it's true. To be quite honest, I'm not sure where this is documented.
Nevertheless, our reasoning for making msvcr70.dll separate from msvcrt.dll
was to help protect you against DLL hell. Since msvcr70.dll is not a known
system DLL, the system will use the version distributed with you application
instead of the version shipped with the operating system. Overall, this
helps you isolate your testing environment.
Obviously you cannot redistribute msvcrt.dll since it is not shipped with
Visual Studio... so it makes sense that you're left with msvcr70.dll.
I hope that clears some of the confusion!
--
Cheerio!
Brandon Bray Program Manager in the Visual C++ Compiler Team
And now a word from the lawyers: This posting is provided "AS IS" with no
warranties, and confers no rights. You assume all risk for your use. © 2002
Microsoft Corporation. All rights reserved.
* Does the same reasoning (DLL Hell) apply to MFC70.DLL?
* Someone from MS mentioned that MSVCRT.DLL will be used by drivers. Since
VC.NET has no option to use that DLL instead of MSVCR70.DLL does it mean
that that the last version that can be used to build drivers is VS 6.0?
Or will the DDK ship with different msvcrt.lib?
* I don't think that there will be frequent bug fixes in MSVCRT. The code is
out for several years and it is heavily used. But nobody mentioned that
VS.NET needs support for new runtime checks in standard library. That is
(IMHO) the main reason why you have to change the name.
Frankly speaking, this new DLL and the changed for loop scope destructor
(see my post) makes very difficult to upgrade to VS.NET.
Best regards, Jan
No problem!
> * Does the same reasoning (DLL Hell) apply to MFC70.DLL?
Honestly, I don't know much about MFC, but the name change does seem
reasonable. I am not sure if mfc70.dll is considered a system dll or not.
> * Someone from MS mentioned that MSVCRT.DLL will be used by drivers. Since
> VC.NET has no option to use that DLL instead of MSVCR70.DLL does it mean
> that that the last version that can be used to build drivers is VS 6.0?
> Or will the DDK ship with different msvcrt.lib?
I believe the DDK will have to ship a different msvcrt.lib. I'll look into
that and hopefully have an answer at some point. Basically, since
msvcrt.lib will change with every update to the operating system -- it makes
sense that drivers would be updated as well (or at least tested to work with
the updated msvcrt.dll). Applications probably would prefer to stick with
whatever CRT it was developed and tested with.
> * I don't think that there will be frequent bug fixes in MSVCRT. The code
> is out for several years and it is heavily used. But nobody mentioned that
> VS.NET needs support for new runtime checks in standard library. That is
> (IMHO) the main reason why you have to change the name.
You'd actually be surprised -- the CRT does get serviced fairly frequently,
and it does get new features. Many of these features certainly aren't
flashy, but they address needs of critical applications.
That said, msvcrt.dll and msvcr70.dll are mostly the same. Given the limit
as time approaches positive infinity, the binary images of both DLLs is
identical. Since we don't live in the time of positive infinity, we have to
face the more practical effects of software engineering. While this
solution is perhaps not ideal, it is far better than what we had before.
> Frankly speaking, this new DLL and the changed for loop scope destructor
> (see my post) makes very difficult to upgrade to VS.NET.
Why does this new DLL cause so many problems? If you were doing it right
before, you were redistributing msvcrt.dll rather than relying on the system
copy. A name change is a temporary growing pain... you get past it very
quickly.
As for the the "for scope" change, we'll be damned if we do and damned if
don't. At least right now we're being practical and providing a
transitional solution until we can exclusively support the conformant
semantics. Fixing your code so that is conformant with the C++ standard is
definitely in your best interest in any situation.