Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

warning: no type library found #29

Open
somanuell opened this issue Oct 6, 2021 · 10 comments
Open

warning: no type library found #29

somanuell opened this issue Oct 6, 2021 · 10 comments

Comments

@somanuell
Copy link

My ini file, for the time being, is super simple:

Identity C:\Users\I505225\source\repos\RegFree2\Debug\RegFree2.exe
File C:\Users\I505225\source\repos\RegFree\Debug\MyComDll.dll

But:

C:\Users\I505225\source\repos\RegFree2\Debug>UMMM.exe RegFree2.ini
warning: no type library found in C:\Users\I505225\source\repos\RegFree\Debug\MyComDll.dll

The Dll has a tlb in its resources via a classic 1 TYPELIB "MyComDll.tlb"
OleView.exe is able to see/load that tlb.

@wqweto
Copy link
Owner

wqweto commented Oct 6, 2021

If MyComDll.dll is an x64 executable this might be a problem because UMMM does not have an x64 version yet.

@somanuell
Copy link
Author

MyComDll.dll is x86.

@wqweto
Copy link
Owner

wqweto commented Oct 6, 2021

Is this COM DLL registered with regsvr32?

@somanuell
Copy link
Author

That Dll was not registered with regsvr32. My goal is to do "Reg Free".
After registration, the warning is unchanged warning: no type library found

@DaveInCaz
Copy link
Contributor

@somanuell generally speaking it is almost impossible for the development environment to be regfree, in my experience. But your deployment can be.


As a further check of your environment and that UMMM & its dependencies are setup correctly, will it work for a standard VB6 or system DLL? Something like MSCOMCTL.ocx? Or do you get a similar error even in that case?

@somanuell
Copy link
Author

somanuell commented Oct 6, 2021

I am OK with having to use the Registry at dev time.
if I add Dependency ComCtl to my ini file, I get a dependency section added to the manifest:

<dependency>
       <dependentAssembly>
           <assemblyIdentity language="*" name="Microsoft.Windows.Common-Controls" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" type="win32" version="6.0.0.0" />
       </dependentAssembly>
</dependency>

@apdevelop
Copy link

I getting the same error, using latest 1.0.17 UMMM version, running it on clean Windows 7 SP1 x64 system. The application is VB6 compiled exe file, which uses several ActiveX (.ocx) components.
warning: no type library found in MSCOMCTL.OCX
and empty tag in output manifest

<file name="MSCOMCTL.OCX">
</file>

Registering / unregistering .ocx files with regsvr32 has no effect.

@wqweto
Copy link
Owner

wqweto commented Apr 21, 2022

The error generally means that UMMM cannot access the type library living inside the referenced OCX using the system provided TLBINF32.DLL helper DLL.

Btw, you don't need clean OS to use UMMM because there is no MSCOMCTL.OCX on clean Win7 anyway. Where is this OCX sourced from and is it compatible with Win7?

You can run UMMM on your dev machine where MSCOMCTL.OCX is installed and working correctly (can be referenced by a project) and this is usually what we do -- run UMMM on the build server (which has all DLLs/OCXs registered) as a post-build step.

@apdevelop
Copy link

I use clean system for further testing Registration-Free COM. I have only compiled exe in CAB with dependencies (dll and ocx). There actually was no TLBINF32.DLL in that clean system (looks like it will be installed with Visual Basic).
I took TLBINF32.DLL from VB6 installation disk, registered it with regsvr32 and now UMMM generates .manifest file.

@wqweto
Copy link
Owner

wqweto commented Apr 21, 2022

Ooops, sorry about that!

So it seems UMMM does have a non-system provided dependency.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants