Re: ie6sp1 : Repair Function Blocked - Anyone know of a fix?

From: Robert Aldwinckle (robald_at_techemail.com)
Date: 07/28/04


Date: Wed, 28 Jul 2004 16:47:02 -0400


> 1) Regsvr32 /I /n digest.dll
>
> - digest.dll loaded
> - problem no entry point for DllRegisterServer

Oops. Evidently those switches have an order dependency.
Otherwise there should have been no mention of DllRegisterServer
because that is what the /n switch is telling it explicitly to bypass.

The KB249873 article documents them in the order:
    regsvr32 /n /i digest.dll
not the order that I gave (off the top of my head.)
Also note that you have capitalized the /i switch.
If there are such bizarre dependencies with order perhaps
there are also weird variations due to case.

The versions of the other modules look fine and I wouldn't worry
about the ones that are missing. Probably they don't apply to your OS.

Good luck

Robert

---
"den" <eponymous@discussions.microsoft.com> wrote in message
news:OLpINKMdEHA.3560@TK2MSFTNGP10.phx.gbl...
> Robert Aldwinckle wrote:
>> "den" <eponymous@discussions.microsoft.com> wrote in message
>> news:OpEjaHdcEHA.4092@TK2MSFTNGP10.phx.gbl
>> ...
>>> Robert,
>>>
>>> Many thanks for this.  Not quite there yet.  Have discovered a very
>>> useful KB 207132:  How Regsvr32.exe Registers and Unregisters COM
>>> DLLs
>>>
>>> This both describes the process and provides a script for trouble
>>> shooting. Would appreciate it if you could please clarify a couple
>>> of points about executing trouble shooting script <<Register.cpp>>:
>>>
>>> 1) Presume <<Register.cpp>> is placed in c:\windows\system\ together
>>> with Regsvr32.exe and *.dlls?
>>> 2) How do you ensure test mode and that the <<Register.cpp>> script
>>> gets called instead of the usual <<??>> used with standard register
>>> and unregister process?
>>>
>>> In other words, filling in the additional steps needed for "building
>>> the application and using it to register or unregister your COM DLL"
>>> would be extremely useful.
>>
>> That part of the article you found addresses  C++  programmers.
>> Register.cpp  is a  C++  source code module, not a "script".
>> It would need to be compiled and linked...   ;)
>> Frankly I don't see any advantage to using it over  regsvr32.exe
>>
>> Here is a more relevant article for end-users of  regsvr32:
>>
>> <title>KB249873 - Explanation of Regsvr32 Usage and Error
>> Messages</title>
>>
>>
>>> Thanks again for all your help.  Hope KB 207132 is of
>>> interest to you too.
>>>
>>> Denis
>>
>>
>> The additional background information at the beginning of the article
>> is interesting, yes.   Thank you.
>>
>>
>> Robert
>> ---
>
> Robert,
>
> Many thanks for this.  Because of all the time and effort you have already
> kindly put into seeking a resolution - I thought it best to carefully review
> everything before replying.  I appreciate there is a point at which we will
> have done everything we can.  I'm just rather hoping that a final review of
> the tests you suggested might just unearth that missing link!
>
> PROBLEM : IE Repair cannot complete cycle because of problem with DllInstall
>
> TESTS:
>
> 1) Regsvr32 /I /n digest.dll
>
>    - digest.dll loaded
>    - problem no entry point for DllRegisterServer
>
> 2) Control tests with other 2 *.dlls in Section 500
>
>    - wininet.dll (success)
>    - urlmon.dll (success)
>
> Note: Checked registry and only:
> HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnceEx\
> i.e. there is no \500
>
> 3) Ran comparative *.dll version tests against Fixie.inf/Dll Help.
>
> a)  6 mismatches where newer version corresponds with neither Fixie.inf or
> Dll Help:
>
>    - browseui.dll  (6.00.2800.1400) (6.00.2800.1100-)
>    - mshtml.dll    (6.00.2800.1400)  (6.00.2800.1100-)
>    - shdocvw.dll  (6.00.2800.1400)  (6.00.2800.1100-)
>    - shlwapi.dll    (6.00.2800.1400)  (6.00.2800.1100-)
>    - urlmon.dll     (6.00.2800.1400)  (6.00.2800.1100-)
>    - wininet.dll     (6.00.2800.1405)  (6.00.2800.1100-)
>
> Note: No changes made yet as wanted to check whether:
>
> - change necessary?
> - can copy all (6.00.2800.1100-) files from laptop - and install afresh - or
> need to download?
>
> b) Dependency Walker records the expected presence of 3 non-existent XL
> files:
>
>   - apphelp.dll
>   - userenv.dll
>   - uxtheme.dll
>
> CONCLUSION : There is definitely a problem with the DllInstall function with
> digest.dll.  This is due to their being no entry point for
> DllRegisterServer.  What is less clear is whether anything can be done to
> edit and fix this?   KB articles seem to suggest that this might be possible
> using C++.  << Frankly I don't see any advantage to using it [C++] over
> regsvr32.exe>> seems to suggest that you might know a way of editing and
> fixing dll entry points etc without resort to C++?  If there is a way of
> using Regsvr32.exe and Dependency Walker to fix the entry point issue etc
> without resort to C++ - then that would be brilliant!   Once again, thanks
> for all your help.
>
> Denis
>
>
> 


Relevant Pages

  • Re: System-wide hooking, VB+ASM
    ... >> standard entry point. ... >DLL entry point. ... >without any source code generated, another is a project with a simple DLL, ... >generated for the simple DLL does have a skeleton DllMain and that is all ...
    (microsoft.public.vb.winapi)
  • Re: Error number: 0x8024402B
    ... DllUnregisterServer entry point was not found. ... Dllname may not be exported, or a corrupted version of Dllname may ... > corrected even thought the two listed dll's would not register. ... but the DllRegisterServer entry point was not ...
    (microsoft.public.windowsupdate)
  • RE: Web Part Unsafe
    ... DON'T strong name your assembly, remove the old dll from the GAC, ... I add an entry to the webconfig in the wwwroot. ... > on it so there may be configuration issues. ...
    (microsoft.public.sharepoint.portalserver.development)
  • Re: Setup.com - Entry Point not found
    ... 2000 Server box. ... This has my exchange 2000 on here. ... The procedure entry point GetProcessId could not be located in the dynamic ... but DllRegisterServer entry point was not found. ...
    (microsoft.public.win2000.general)
  • Re: System-wide hooking, VB+ASM
    ... > It looks as if you are saying that a DLL need not have an entry point. ... I avoid saying "Wrong" like that and I seldom do. ... A DLL is just a bunch of functions. ... assembler did nearly a half century ago. ...
    (microsoft.public.vb.winapi)