DLLToGUID Utility Enhancements

In previous article, I already created the utility to map the DLL file to its associated GUID in particular directory.

In the first version if this utility, there are some limitation that it only use the LoadTypeLib function. This function rely heavily on existence of type library within requested DLL.

However, there are DLL that do not have type library information but still can be registered as COM modules. This registration process is done by using regsvr32.exe utility provided by Microsoft.

So, this is precisely the goal of enhancements to existing DLLToGUID utility, i.e. to augment the existing capability by adding registry value checking and detecting presence of DllRegisterServer exported function to determine whether DLL module in question can be registered as COM component or not.

Typical output of DLLToGUID utility as follows :

When it says that certain DLL is Not Registered, as in the MSADCE.DLL file above, it means this utility detects presence of DllRegisterServer function, hence, could be be registered as COM module, but not yet registered using regsvr32.exe. As long as this DLL is not used, there is no problem, but it will became latent problem that creates headaches later on when suddenly this DLL is required.

In this case, you can perform regsvr32.exe to this DLL module :

And rechecks it using DLLToGUID to verify that is indeed already registered :

Another uses of DLLToGUID is to determine which DLL in certain application has COM interface.

Using this enhanced utility, I then can create, for example, expanded list of DLL to GUID mapping to be referenced when there are problems related to Microsoft Data Access Components :

Please note that there are redundancies of the key for certain DLL file, this is because some DLL has type library but its class id tends to be incomplete.

So the redundancies is caused by data result from registry checks and also data result from type library interface, if any.

At location C:\Program Files\Common Files\System\ado :

msado15.dll {00000507-0000-0010-8000-00AA006D2EA4}
msado15.dll {0000050B-0000-0010-8000-00AA006D2EA4}
msado15.dll {00000514-0000-0010-8000-00AA006D2EA4}
msado15.dll {00000535-0000-0010-8000-00AA006D2EA4}
msado15.dll {00000541-0000-0010-8000-00AA006D2EA4}
msado15.dll {00000542-0000-0010-8000-00AA006D2EA4}
msado15.dll {00000560-0000-0010-8000-00AA006D2EA4}
msado15.dll {00000566-0000-0010-8000-00AA006D2EA4}
msado15.dll {00000514-0000-0010-8000-00AA006D2EA4}
msado15.dll {00000560-0000-0010-8000-00AA006D2EA4}
msado15.dll {00000566-0000-0010-8000-00AA006D2EA4}
msado15.dll {00000507-0000-0010-8000-00AA006D2EA4}
msado15.dll {00000535-0000-0010-8000-00AA006D2EA4}
msado15.dll {0000050B-0000-0010-8000-00AA006D2EA4}
msadomd.dll {228136B0-8BD3-11D0-B4EF-00A0C9138CA4}
msadomd.dll {228136B8-8BD3-11D0-B4EF-00A0C9138CA4}
msadomd.dll {228136B0-8BD3-11D0-B4EF-00A0C9138CA4}
msadomd.dll {228136B8-8BD3-11D0-B4EF-00A0C9138CA4}
msador15.dll {00000535-0000-0010-8000-00AA006D2EA4}
msadox.dll {00000609-0000-0010-8000-00AA006D2EA4}
msadox.dll {0000061B-0000-0010-8000-00AA006D2EA4}
msadox.dll {0000061E-0000-0010-8000-00AA006D2EA4}
msadox.dll {00000621-0000-0010-8000-00AA006D2EA4}
msadox.dll {00000615-0000-0010-8000-00AA006D2EA4}
msadox.dll {00000618-0000-0010-8000-00AA006D2EA4}
msadox.dll {00000602-0000-0010-8000-00AA006D2EA4}
msadrh15.dll {92396AD0-68F5-11d0-A57E-00A0C9138C66}
msjro.dll {D2D139E3-B6CA-11D1-9F31-00C04FC29D52}
msjro.dll {DE88C160-FF2C-11D1-BB6F-00C04FAE22DA}

At location C:\Program Files\Common Files\System\msadc :

msadce.dll {3FF292B6-B204-11CF-8D23-00AA005FFE58}
msadce.dll {58ECEE30-E715-11CF-B0E3-00AA003F000F}
msadcf.dll {9381D8F5-0288-11D0-9501-00AA00B911A5}
msadco.dll {BD96C556-65A3-11D0-983A-00C04FC29E33}
msadco.dll {BD96C556-65A3-11D0-983A-00C04FC29E36}
msadds.dll {3449A1C8-C56C-11D0-AD72-00C04FC29863}
msdaprst.dll {7C07E0D0-4418-11D2-9212-00C04FBBBFB3}
msdarem.dll {27016870-8E02-11D1-924E-00C04FBBBFB3}
msdfmap.dll {A1A6B99D-497F-11D1-9217-00C04FBBBFB3}

At location C:\Program Files\Common Files\System\Ole DB :

MSDAIPP.DLL {11480D94-C3A5-11D3-BA7C-00C04F7948B3}
MSDAIPP.DLL {AF320921-9381-11D1-9C3C-0000F875AC61}
MSDAIPP.DLL {D9D5678A-76CE-4804-AAFC-1DA2502DB0BC}
MSDAIPP.DLL {E1D2BF40-A96B-11d1-9C6B-0000F875AC61}
MSDAIPP.DLL {E1D2BF42-A96B-11D1-9C6B-0000F875AC61}
MSDAIPP.DLL {E1D2BF40-A96B-11D1-9C6B-0000F875AC61}
MSDAIPP.DLL {AF320921-9381-11D1-9C3C-0000F875AC61}
MSDAIPP.DLL {11480D94-C3A5-11D3-BA7C-00C04F7948B3}
MSDAIPP.DLL {D9D5678A-76CE-4804-AAFC-1DA2502DB0BC}
msdaora.dll {e8cc4cbe-fdff-11d0-b865-00a0c9081c1d}
msdaora.dll {e8cc4cbf-fdff-11d0-b865-00a0c9081c1d}
msdaosp.dll {dfc8bdc0-e378-11d0-9b30-0080c7e9fe95}
msdaps.dll {06210E88-01F5-11D1-B512-0080C781C384}
msdaps.dll {ef636390-f343-11d0-9477-00c04fd36226}
msdaps.dll {ef636391-f343-11d0-9477-00c04fd36226}
msdaps.dll {ef636392-f343-11d0-9477-00c04fd36226}
msdaps.dll {ef636393-f343-11d0-9477-00c04fd36226}
msdasql.dll {c8b522cb-5cf3-11ce-ade5-00aa0044773d}
msdasql.dll {c8b522cc-5cf3-11ce-ade5-00aa0044773d}
msdasql.dll {c8b522cd-5cf3-11ce-ade5-00aa0044773d}
MSDMENG.DLL {08EAF772-59A5-11D3-B3A7-00C04F687719}
MSDMENG.DLL {65813656-4461-11D3-8C7B-00600832DCED}
MSDMENG.DLL {65813659-4461-11D3-8C7B-00600832DCED}
MSDMENG.DLL {830437A6-2F36-11D3-8C76-00600832DCED}
MSDMENG.DLL {89555CC1-4928-11D3-8D4C-00E029154FDE}
MSDMENG.DLL {C1CD5360-28E5-11D3-8C76-00600832DCED}
MSDMENG.DLL {ED56664F-4088-11D3-B394-00C04F687719}
MSDMENG.DLL {C1CD5360-28E5-11D3-8C76-00600832DCED}
MSDMENG.DLL {830437A3-2F36-11D3-8C76-00600832DCED}
MSDMENG.DLL {830437A6-2F36-11D3-8C76-00600832DCED}
MSDMENG.DLL {ED56664F-4088-11D3-B394-00C04F687719}
MSDMENG.DLL {65813656-4461-11D3-8C7B-00600832DCED}
MSDMENG.DLL {65813659-4461-11D3-8C7B-00600832DCED}
MSDMENG.DLL {89555CC1-4928-11D3-8D4C-00E029154FDE}
MSDMENG.DLL {08EAF772-59A5-11D3-B3A7-00C04F687719}
MSDMINE.DLL {2CB6C2D3-DD7C-11D2-AFE4-00105A994724}
MSDMINE.DLL {72B082C6-97D5-11D3-8BEC-00C04F68DDC2}
MSDMINE.DLL {8853D6B2-E8AE-11D2-AFE8-00105A994724}
MSDMINE.DLL {2CB6C2D3-DD7C-11D2-AFE4-00105A994724}
MSDMINE.DLL {8853D6B2-E8AE-11D2-AFE8-00105A994724}
MSDMINE.DLL {72B082C6-97D5-11D3-8BEC-00C04F68DDC2}
MSMDCB80.DLL {8a285c52-8687-11d3-ab5d-00c04f9407b9}
MSMDCB80.DLL {EF3694A3-3C1C-11D1-ABD2-00C04FC30999}
MSMDCB80.DLL {EF3694A6-3C1C-11D1-ABD2-00C04FC30999}
MSMDCB80.DLL {EF3694A9-3C1C-11D1-ABD2-00C04FC30999}
MSMDCB80.DLL {EF3694AC-3C1C-11D1-ABD2-00C04FC30999}
MSMDCB80.DLL {EF3694AF-3C1C-11D1-ABD2-00C04FC30999}
MSMDCB80.DLL {EF3694B2-3C1C-11D1-ABD2-00C04FC30999}
MSMDCB80.DLL {EF3694B5-3C1C-11D1-ABD2-00C04FC30999}
MSMDCB80.DLL {8A285C52-8687-11D3-AB5D-00C04F9407B9}
MSMDCB80.DLL {7C504FFC-44E0-11D1-ABD4-00C04FC30999}
MSMDCB80.DLL {BA2BC757-271E-11D2-8E77-00600893AF2D}
MSMDGD80.DLL {1e083962-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083963-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083964-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083965-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083966-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083967-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083968-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083969-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e08396a-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e08396b-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e08396c-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e08396d-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e08396e-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e08396f-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083970-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083971-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083972-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083973-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083974-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083975-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083976-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083977-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083978-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083979-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e08397a-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e08397b-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e08397c-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e08397d-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e08397e-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e08397f-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1e083980-829f-11d3-ab5d-00c04f9407b9}
MSMDGD80.DLL {1E083961-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083962-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083963-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083964-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083965-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083966-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083967-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083968-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083980-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083969-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E08396A-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E08396B-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E08396C-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E08396D-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E08396E-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E08396F-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083970-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083971-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083972-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083973-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083974-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083975-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083976-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083977-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083978-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E083979-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E08397A-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E08397B-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E08397C-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E08397D-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E08397E-829F-11D3-AB5D-00C04F9407B9}
MSMDGD80.DLL {1E08397F-829F-11D3-AB5D-00C04F9407B9}
MSOLAP80.DLL {a07ccd0c-8148-11d0-87bb-00c04fc33942}
MSOLAP80.DLL {a07ccd0d-8148-11d0-87bb-00c04fc33942}
MSOLUI80.DLL {5C63C824-4122-4A70-A03E-482B2B9A8269}
MSOLUI80.DLL {5C63C824-4122-4A70-A03E-482B2B9A8269}
msxactps.dll {0FB15084-AF41-11CE-BD2B-204C4F4F5020}
oledb32.dll {2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}
oledb32.dll {2206CDB0-19C1-11D1-89E0-00C04FD7A829}
oledb32.dll {2206CDB2-19C1-11D1-89E0-00C04FD7A829}
oledb32.dll {2206CDB3-19C1-11D1-89E0-00C04FD7A829}
oledb32.dll {C8B522CF-5CF3-11CE-ADE5-00AA0044773D}
oledb32.dll {c8b522d0-5cf3-11ce-ade5-00aa0044773d}
oledb32.dll {c8b522d1-5cf3-11ce-ade5-00aa0044773d}
oledb32.dll {CCB4EC60-B9DC-11D1-AC80-00A0C9034873}
oledb32.dll {FF151822-B0BF-11D1-A80D-000000000000}
oledb32.dll {2206CDB2-19C1-11D1-89E0-00C04FD7A829}
oledb32.dll {2206CDB0-19C1-11D1-89E0-00C04FD7A829}
oledb32.dll {CCB4EC60-B9DC-11D1-AC80-00A0C9034873}
oledb32.dll {FF151822-B0BF-11D1-A80D-000000000000}
sqloledb.dll {0C7FF16C-38E3-11d0-97AB-00C04FC2AD98}
sqloledb.dll {C0932C62-38E5-11d0-97AB-00C04FC2AD98}
sqloledb.dll {DFA22B8E-E68D-11d0-97E4-00C04FC2AD98}
sqlxmlx.dll {E3E1D966-0829-48AC-B3AD-C5AE4CA171C4}
sqlxmlx.dll {E3E1D967-0829-48AC-B3AD-C5AE4CA171C4}

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


%d bloggers like this: