Library not registred
Updated: 23 May 2010 | 5 comments
Hi
When i'm applying a patch on a software...
Lot many dll are being replaced and registred. when the application is running after the patch is applied...
we end up with a error saying library not registered...exception from HRESULT...
i understood some dll registration has been failed while applying the patch.
Is there any way to figure out which one has been failed other than verbose log?
Tnx
iluom2
discussion Filed Under:
Comments
No simple way
You could extract the registration information from each library using WiseComCapture, then check in the target machine registry for which keys are missing.
Alternatively, run an explicit registration operation for each new DLL in you rpatch - there is no issue with registering a DLL a second time if it is already registered from the same location.
If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.
You could extract the
You could extract the registration information from each library using WiseComCapture, then check in the target machine registry for which keys are missing.
Alternatively, run an explicit registration operation for each new DLL in you rpatch - there is no issue with registering a DLL a second time if it is already registered from the same location.
Can you tell me how to do explicit registration operation?
Is there any way in wise Script?
Run REGSVR32.EXE
You can explicitly register a DLL using REGSVR32.EXE, and this can be carried out using Wisescript's Execute Program command.
You can check if a DLL is capable of registration by running:
regsvr32.exe <path>\YourDll.dll
If running within a custom action, you would add the /s switch for a silent registration.
If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.
Ed! What are you doing?!? :)
Ed! What are you doing?!? :)
I read through your response, looking - in vain - for the usual caveat that registering DLLs/OCXs with RegSvr32 is the wrong way to go about things, if for no other reason than, if the file in question has dependencies, the registration will fail if those dependencies are not present.
In any event, why on earth would re-registration be necessary for a patch? Surely none of the CLSIDs or object names have changed? If they have, that makes this an upgrade, not a patch. In fact, I might be minded to count that as a new product.
Don't know why 'x' happened? Want to know why 'y' happened? Use ProcMon and it will tell you.
Think about using http://www.google.com before posting.
Striking a balance
If a DLL has been updated and additional entry points provided, or a bug in existing entry points fixed, then re-registration is very likely to be required. The jury is still out on whether this would count as a patch or an upgrade - especially as Microsoft themselves are greying the boundaries.
Sure, there are dependency issues, hence my suggestion about a manual check of registration - maybe I did not spell it out, but I like to strike a balance and assume some level of experience in the user asking the question.
It doesn't take long to find out if additional information is required, as you know, from the users who expect us to complete the entire project for them, or who ask questions that Mr Google already has answers for.
If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.
Would you like to reply?
Login or Register to post your comment.