Avast WEBforum

Consumer Products => Avast Free Antivirus / Premium Security (legacy Pro Antivirus, Internet Security, Premier) => Topic started by: gordon451 on February 14, 2010, 02:32:12 PM

Title: MSVCR90.dll
Post by: gordon451 on February 14, 2010, 02:32:12 PM
First, thank you to all the nice people on this forum.  Youse do a good job, and please keep it up.

Now, Alwil.  I have just wasted over an hour removing 4.8, rebooting into Safe Mode, using the v4 removal tool, rebooting, scrape the registry clean -- 4 hives -- and then install 5.0.418.

And guess what!!!!!  MSVCR90.dll is missing!!!!!!!!!!!!!!!!!!!!!!!  Now I have to scrape out all traces of v5.  I am not happy.

Where is the Microsoft Visual C++ 2008 SP1 Redistributable Package (x86) that Avast!5 needs?

The files are certainly included in and installed by the avast! installer.

Sorry Igor, they're not.

I've said it before, but I don't (this time) mind saying it again.  If an app needs certain bits to make it go, then the publisher needs to make customers aware of the fact.  Good, reputable publishers may include the redistributable in the download, or they may point the client to a download facility.  The best publishers host copies on their own websites.  Good, reputable publishers do NOT leave this task to volunteers on the support forums.

Now I am sick and tired of trying to make the wonderful v5 go on this machine.  I really am not going to waste any more time on downloading something which is larger and doesn't even work.  In my book, despite the best efforts of the volunteers on this forum, Alwil is now just another third-rate wannabe.  I'll go for something which works, even if the detection rate is less than 100%.

Oh yeah.  Trying to update a website AND develop a new version needs TWO teams, not one.  The info I get from the Avast! site is, well, what info?

Gordon.
Title: Re: MSVCR90.dll
Post by: al968 on February 14, 2010, 03:24:37 PM
First, thank you to all the nice people on this forum.  Youse do a good job, and please keep it up.

Now, Alwil.  I have just wasted over an hour removing 4.8, rebooting into Safe Mode, using the v4 removal tool, rebooting, scrape the registry clean -- 4 hives -- and then install 5.0.418.

And guess what!!!!!  MSVCR90.dll is missing!!!!!!!!!!!!!!!!!!!!!!!  Now I have to scrape out all traces of v5.  I am not happy.

Where is the Microsoft Visual C++ 2008 SP1 Redistributable Package (x86) that Avast!5 needs?

The files are certainly included in and installed by the avast! installer.

Sorry Igor, they're not.

I've said it before, but I don't (this time) mind saying it again.  If an app needs certain bits to make it go, then the publisher needs to make customers aware of the fact.  Good, reputable publishers may include the redistributable in the download, or they may point the client to a download facility.  The best publishers host copies on their own websites.  Good, reputable publishers do NOT leave this task to volunteers on the support forums.

Now I am sick and tired of trying to make the wonderful v5 go on this machine.  I really am not going to waste any more time on downloading something which is larger and doesn't even work.  In my book, despite the best efforts of the volunteers on this forum, Alwil is now just another third-rate wannabe.  I'll go for something which works, even if the detection rate is less than 100%.

Oh yeah.  Trying to update a website AND develop a new version needs TWO teams, not one.  The info I get from the Avast! site is, well, what info?

Gordon.

Firstly, have you looked around the forum , do you see that anyone has had this problem ?? I don't so has it occured to you that there was a disfonction in your particular installation ??

Secondly, are you aware of the fact that many programs do indeed install third-party applications like this in order to work ? No because most software do not let you know that so drop your "Good, reputable publishers " speech as in fact it is irrelevant to the issue as it should be included in the installer like igor said and the real issue and question is why it isn't in the installer.

Last but not least, I'm assuming that you have advanced Team/ Software developpement skills since you're telling Alwil how to do they're job ? But then again, given the tone which you are using as well as your arguements aren't that well though out (then it is just an opinion).


So if you would please help alwil to understand the cause f this issue...It would prevent it from ever happening again.

Thank You

Al968
Title: Re: MSVCR90.dll
Post by: dabeniao on February 14, 2010, 03:29:37 PM

And guess what!!!!!  MSVCR90.dll is missing!!!!!!!!!!!!!!!!!!!!!!!  Now I have to scrape out all traces of v5.  I am not happy.

Where is the Microsoft Visual C++ 2008 SP1 Redistributable Package (x86) that Avast!5 needs?

The files are certainly included in and installed by the avast! installer.

Sorry Igor, they're not.


I think it is because MSVCR90.dll is included in Windows XP, Vista and 7, but not in Windows 2000. Maybe the ALWIL team forgot about this?
Title: Re: MSVCR90.dll
Post by: Gopher John on February 14, 2010, 04:01:51 PM
The Microsoft Visual C++ 2008 Redistributable Package (x86) is available from http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displaylang=en (http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displaylang=en).

Supported Operating Systems: Windows 2000 Service Pack 4; Windows Server 2003; Windows Vista; Windows XP

Finding it took all of 20 seconds using Google.

Title: Re: MSVCR90.dll
Post by: igor on February 14, 2010, 04:09:27 PM
Good, reputable publishers may include the redistributable in the download, or they may point the client to a download facility.  The best publishers host copies on their own websites.  Good, reputable publishers do NOT leave this task to volunteers on the support forums.

I'm afraid I have to repeat myself - but the corresponding redistributable is included in the installer, and is run during the installation. (If it weren't, we'd see thousands of users having this problem - which we don't.)
So, it seems that the redistributable fails to installs on your machine for some reason...
Title: Re: MSVCR90.dll
Post by: igor on February 14, 2010, 04:10:56 PM
Finding it took all of 20 seconds using Google.

Well, maybe yes, but it's not the correct one ;)
This is the one: http://www.microsoft.com/downloads/details.aspx?FamilyID=a5c84275-3b97-4ab7-a40d-3802b2af5fc2&displaylang=en
Title: Re: MSVCR90.dll
Post by: Gopher John on February 14, 2010, 05:47:48 PM
Finding it took all of 20 seconds using Google.

Well, maybe yes, but it's not the correct one ;)
This is the one: http://www.microsoft.com/downloads/details.aspx?FamilyID=a5c84275-3b97-4ab7-a40d-3802b2af5fc2&displaylang=en

Looks like I stopped short after finding the original release. :-[  Guess that happens when one isn't having the problem. ::)
Title: Re: MSVCR90.dll
Post by: gordon451 on February 15, 2010, 01:41:37 PM
@igor -- OK, I'll scrape out 4.8 again, and reinstall .418 again.  This time I'll look for the install log.  However, it won't be soon, as I normally work 10- or 11-hour days: the weekend looks good... 8)  I should say that there were no error messages until I rebooted, so W2K did not object to the distributable as such.  Having said that, in previous attempts to install and run v5 I was unable to find any trace of the MS*90.dll pack -- I have several other versions, *80, *70, etc in \WINNT\system32\, but no *90.

This download was from the Avast! site, using http://download69.avast.com/iavs5x/setup_av_free_eng.exe (http://download69.avast.com/iavs5x/setup_av_free_eng.exe).  I assume the installer is able to suss my OS by itself and make the appropriate decisions?

@igor - Ummm...  Silly question time.  In most exe's, if I view them in EditPad I can find a section with a list of dll's.  Looking through earlier v5's, I cannot find any mention of the Visual C++ expressed as MSVCR90.dll.  Should I be able to see it?

@al968 - my mother always said "If you cannot say anything helpful or nice, say nothing."  I'm not into flame wars, so nothing is what I'm saying now.

@Gopher John - Thank you for the links.  As I said in my initial rant, while the many thoughtful members of this forum are more than willing to help this way, they should not have to.  This really is something that Alwill has to do, and I'm going to give it one more go and work with igor to see if the .418 download is trying to install it.

Gordon.
Title: Re: MSVCR90.dll
Post by: psw on February 15, 2010, 02:35:49 PM
I'm confirming the existence of the problem with this DLL missing. Key point is target system Win2000. I installed Avast 5.0.418 on VM with Win2000SP4. Installation was gone fine, but AvastUI.exe can not started due to this DLL is missed (it is really missed in system32).
Title: Re: MSVCR90.dll
Post by: psw on February 16, 2010, 07:07:11 PM
And the reason the this DLL missing is clear now.
Yes. avast! installator calls vcredist_x86.exe for installing missing DLL from VisualStudio2008SP1. But this redist installer can not run on Win2000SP4 system due to missing the required entry HeapSetInformation in the corresponding KERNEL32.DLL. So redist is NOT installed without any information for user.
So workaround is manual copy this DLL from some XP+ system to Win2000 system.
Title: Re: MSVCR90.dll
Post by: psw on February 17, 2010, 10:15:43 AM
So it is not Alwil but Microsoft fault.
The only redistributive file which can be spread is vcredist_x86.exe from MS site. System requirements from download page are
    * Supported Operating Systems: Windows 2000 Service Pack 4; Windows Server 2003; Windows Server 2008; Windows Vista; Windows XP
    * Minimum: 6 MB (x86)
    * Required Software: Windows Installer 3.0 Windows Installer 3.1 or later is recommended.

But internally this exe is selfextracting archive consisting of:
a) install.exe. install.ini, globdata.ini, vcredist.bmp, a lot of eula text files, a lot of resource DLL for this install.exe
b) vc_red.msi, vc_red.cab

Microsoft fault is the install.exe was written WITHOUT W2K compatibility because it uses for example the function HeapSetInformation which according MSDN requires Windows Vista or Windows XP.
So this install.exe can not run on W2K giving error message.

But the only useful part of this package is 2 files from b) (VC_RED.MSI and VC_RED.CAB). These files can be copied manually from temporary directory when error message dialog box is shown.
With these 2 files copied we can launch vc_rew.msi manually and got VS2008SP1 runtime installed both in SYSTEM32 folder and WinSxS store.

Probably it is worth to inform MS about this fault.
Title: Re: MSVCR90.dll
Post by: Zyndstoff (aka Steven Gail) on February 17, 2010, 10:24:03 AM
Good work, psw! Kudos.  8)
Title: Re: MSVCR90.dll
Post by: gordon451 on February 17, 2010, 01:54:03 PM
Well done psw!!!!!!!!!!!!!!!!!!  :)
Title: igor?
Post by: gordon451 on February 17, 2010, 02:12:55 PM
@igor -

I'm afraid I have to repeat myself - but the corresponding redistributable is included in the installer, and is run during the installation. (If it weren't, we'd see thousands of users having this problem - which we don't.)
So, it seems that the redistributable fails to installs on your machine for some reason...

And the reason the this DLL missing is clear now.
Yes. avast! installator calls vcredist_x86.exe for installing missing DLL from VisualStudio2008SP1. But this redist installer can not run on Win2000SP4 system due to missing the required entry HeapSetInformation in the corresponding KERNEL32.DLL. So redist is NOT installed without any information for user.
So workaround is manual copy this DLL from some XP+ system to Win2000 system.

I agree with psw.  It's actually not Alwil's fault.  OTOH, someone didn't test thoroughly on W2K systems, or made an assumption, and the minimum requirements for v5 do clearly include W2K -- not even requiring SP4!!!

I'm afraid I really must insist on a suitable minor update...  You may want to liase with pk.  He has my ntoskernel.dll file which is missing the required HeapSetInformation thingy.

Gordon.
Title: Re: MSVCR90.dll
Post by: igor on February 17, 2010, 02:35:31 PM
I agree it's pretty stupid... requiring SP4 just to start the installer (or rather, having a static dependency... i.e. not showing a reasonable error message).
I didn't notice in this particular thread (in your original posts) that we're talking about Win2000.

Yes, it should be fixed somehow... though I'm not sure how; maube the "best" way would be to show an error in avast! installer that SP4 is required (and make sure the same is clearly stated on the web).
Title: Re: MSVCR90.dll
Post by: gordon451 on February 17, 2010, 03:12:32 PM
I'm not sure it's just a matter of requiring SP4 -- although anyone without SP4 needs his/her/its head read  ;D -- because I have SP4  :) and rollup 1.

If I understand psw correctly, any version aimed at W2K would have to bypass ntoskernel.dll and simply drop vc_red.msi and vc_red.cab into whatever temp folder then run vc_rew.msi.

Alternatively, the Avast! website could host the required MSVCR90 files and drop them into WINNT\system32\ which would have the same result.  I do not believe there is any need to register them, as several other apps have used essentially the same method, although that was on W9x...

And yes, Microsoft should be told  ;D

Gordon.
Title: Re: MSVCR90.dll
Post by: igor on February 17, 2010, 04:41:03 PM
I just downloaded the rollup1 installer (http://www.microsoft.com/downloads/details.aspx?FamilyId=B54730CF-8850-4531-B52B-BF28B324C662&displaylang=en)
and extracted kernel32.dll from inside - and the mentioned API function is inside (while it indeed isn't in pure SP4).

As for hosting msvcr90.dll... I am not sure if it's (legally) allowed, maybe it has to be distributed in the form of the full redistributable. (I may be wrong, just speculating.)
Title: Re: MSVCR90.dll
Post by: psw on February 18, 2010, 12:09:09 PM
Well, maybe yes, but it's not the correct one ;)
This is the one: http://www.microsoft.com/downloads/details.aspx?FamilyID=a5c84275-3b97-4ab7-a40d-3802b2af5fc2&displaylang=en

This one is surely correct (dated August 2008) but not latest ;)
Latest one is 'Microsoft Visual C++ 2008 Service Pack 1 Redistributable Package ATL Security Update'
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=2051a0c1-c9b5-4b0a-a8f5-770a549fd78c
and avast! 5 is using this package (dated July 2009) during install ;)
Title: Re: MSVCR90.dll
Post by: gordon451 on February 19, 2010, 03:07:59 PM
AHEM!!!!!  Just to recap:

On Jan 26 I installed .377 -- see the full story at http://forum.avast.com/index.php?topic=53953.0 (http://forum.avast.com/index.php?topic=53953.0).  Basically, the Visual C++ files were missing.

Jan 31, I install .396 -- see http://forum.avast.com/index.php?topic=54771.0 (http://forum.avast.com/index.php?topic=54771.0).  Not only the Visual C++, but ntoskrnl.exe was missing an entry point:
Quote
Driver Entry Point Not Found

The \SystemRoot\system32\DRIVERS\aswMon2.sys device driver could not locate the entry point IoGetLowerDeviceObject in driver ntoskrnl.exe

psw asked me to send him my ntoskrnl.exe, which I did.

Feb 14, I install .418 -- this thread.  Once again, no Visual C++.

A number of people besides myself have confirmed the VC++ problem: hake, edmuser, psw:
The problem with avast! v5 on Win2000 is that VS2008 redist can not be installed during avast! installation.
So BEFORE avast! v5 install you should manually copy 3 dll into Win2000 system32 directory. These DLL are MSVCR90.DLL, MSVCP90.DLL and MFC90U.DLL
After these DLL were copied you can start ordinary avast! installation. Now it works in my Win2000 virtual machine. Express scan was completed successfully.

I have W2K SP4 and rollup 1.  kernel32.dll version is 5.0.2195.6688, ntoskrnl.exe version is 5.0.2195.6717.

According to psw, Microsoft stuffed up by not including W2K in the invocation of the HeapSetInformation enry point in ntoskrnl.exe.

It also appears from psw's info that for me a lot of jigging about like a chook at a christening is needed to:
Quote
But the only useful part of this package is 2 files from b) (VC_RED.MSI and VC_RED.CAB). These files can be copied manually from temporary directory when error message dialog box is shown.
With these 2 files copied we can launch vc_rew.msi manually and got VS2008SP1 runtime installed both in SYSTEM32 folder and WinSxS store.
and I'm not interested.

I've said this time and again: this is not something we users should have to "work around".  I like the thought that Alwil talks to Microsoft and lets them know of their problem.  OTOH, I won't hold my breath waiting for their reply, I don't look good in purple.

Where do we go from here?

Gordon
Title: Re: MSVCR90.dll
Post by: igor on February 19, 2010, 03:24:19 PM
avast! installer will check if kernel32.dll is new enough (i.e. if it contains this problematic API function), and if not, it shows an error and won't continue.

For you, I'd suggest to reinstall rollup1 (if possible) - the one I downloaded 2 days ago contains kernel32.dll v5.00.2195.7006.
(And, 5.0.2195.6688 is the version of plain SP4, so I actually don't think you have rollup1 installed - or at least it didn't update your kernel32.dll)
Title: Re: MSVCR90.dll
Post by: Zyndstoff (aka Steven Gail) on February 19, 2010, 03:26:02 PM
gordon451, I totally understand the point your making. Users shouldn't be forced into "workarounds" like the above one.

However, I believe that Alwil is the wrong adressee in this plot. It is okay to inform the devs and hint them to talk with MS. I'm sure they will do so. But I doubt that the giant MS will sprint to blizzardly action after Vlk picked up the phone... like: "Hey, Steve, get your ass going, it's Alwil on the phone!"

Basically it's a Win2000 and thus a MS flaw that's causing the trouble.

I'm not sure if it would be legal for Alwil to distribute and copy those 3 files with their installation routine, which - from a technical point of view - would surely be a piece of cake for them.

Where do we go from here? Complain with MS also, send your mail.

I'm afraid there will be no response...

Regards
Zyndstoff  8)
Title: Re: MSVCR90.dll
Post by: gordon451 on February 19, 2010, 04:01:11 PM
@igor - you're a bloody genius mate!  I could have sworn I had rollup 1 installed  :-[ but I did install a couple of other M$ fixes after...  ???  Anyway, it's in now.

And I'll give 418 another go tomorrow or Sunday.  It's nearly midnight here...

@Zyndstoff -
...I doubt that the giant MS will sprint to blizzardly action after Vlk picked up the phone... like: "Hey, Steve, get your ass going, it's Alwil on the phone!"

Where do we go from here? Complain with MS also, send your mail.

I'm afraid there will be no response...

Regards
Zyndstoff  8)

You're not wrong mate. >:(

Gordon.
Title: Re: MSVCR90.dll
Post by: Zyndstoff (aka Steven Gail) on February 19, 2010, 04:08:52 PM

You're not wrong mate. >:(

Gordon.

*blush*  ::) ...I just love being lauded.

Greetings to Australia.
Title: Re: MSVCR90.dll - SOLVED!
Post by: gordon451 on February 20, 2010, 06:10:47 AM
OK.

FIRST, big THANKS to all the devs/evangelists who put up with my tantrums.  psw, you are a genius of the same rank as igor.   ;D

Also, thanks to those who gave advice.  It was listened to, if not always acted on.  ::)

NOW, we need a FAQ for v5, and the first entry should be W2K: system requirements: SP4 and rollup 1.  Rollup 1 contains the updated kernel32.dll and ntoskrnl.exe, without which you will go absolutely nowhere.

I would like to continue slagging and bagging Microsoft -- it's fun  ;D -- but in this case they are actually not responsible.  W2K is an antique product, and the fact that so many people still prefer it is a tribute to Microsoft's engineering.  And I stand by my earlier statement: Anyone who does not have SP4 and rollup 1 needs his/her/its head read.  In my registry, rollup1 is listed under SP5...   ::)  Go figure.

Anyhow, .418 is running fine with no hangs -- I haven't started IE6 yet -- and no dramas.

Gordon.