Easy registration Free COM with VB6

I am trying to get the simplest Free Free Free project to work on 64-bit Windows7! The COM component is also the simplest vb.NET library that works great with VB6 EXE when registering it.

Can anyone guess why the manifest doesn't work?

I have already tried updating any VB6 internal manifest using mt.exe, but a common error indicates that there is no internal manifest in Project2.exe

the VB6 manifest (Project2.exe) is ....

<assemblyIdentity name="Project2.exe" version="1.0.0.0" type="win32" processorArchitecture="x86"/> <dependency> <dependentAssembly> <assemblyIdentity name="ClassLibrary1" version="1.0.0.0" type="win32"/> </dependentAssembly> </dependency> </assembly> 

And the manifest DLL (ClassLibrary1.dll) ...

  <assemblyIdentity name="ClassLibrary1" version="1.0.0.0" type="win32"/> <clrClass name="ClassLibrary1.Class1" clsid="{D9531C2A-3822-4222-8D45-BC507FCDF5F3}" progid="ClassLibrary1.Class1" threadingModel="Both"/> <file name="ClassLibrary1.tlb"> <typelib tlbid="{DA8A00C1-1E14-4295-AEDE-F8F23DD8E43D}" version="1.0" helpdir="" flags="hasdiskimage"/> </file> </assembly> 
+4
source share
1 answer

The metrics are correct assuming the identifiers are correct. So your problem is something else. What error message do you get?

I have been using RegFree Com successfully, and it saved me from countless headaches when you have the right to participate. I do not implement them. I use the Side-by-Side Manifest Maker from the Maze software for this, they are very useful, very valuable investments. I inserted the application manifest and the manifest of one of the DLLs to give you a working example.

File name = MyVB6App.exe.Manifest (pay attention to the .exe tag.)

 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity name="MyVB6App.exe" version="2.8.0.127" type="win32" processorArchitecture="x86"/> <description>Built with: Side-by-Side Manifest Maker (3.7.1.4434) (x86)</description> <dependency> <dependentAssembly> <assemblyIdentity name="MyNetComWrapper" version="1.0.24.0" type="win32" publicKeyToken="6ABF096D69195FE6"/> </dependentAssembly> </dependency> </assembly> 

File name = MyNetComWrapper.Manifest (note the abs . Tag .dll)

 <assemblyIdentity name="MyNetComWrapper" version="1.0.24.0" type="win32" publicKeyToken="6ABF096D69195FE6"/> <description>Built with: Side-by-Side Manifest Maker (3.7.1.4434) (x86)</description> <clrClass name="MyComNetWrapper.SomeClass" clsid="{A68F56A1-8425-3E06-BA83-856EC8422F5B}" progid="MyComNetWrapper.SomeClass" runtimeVersion="v4.0.30319" threadingModel="Both"/> <clrClass name="MyComNetWrapper.SomeOtherClass" clsid="{D5156DAF-0421-36AE-84B6-5D915068B2DC}" progid="MyComNetWrapperc.SomeOtherClass" runtimeVersion="v4.0.30319" threadingModel="Both"/> <file name="MyComNetWrapper.tlb"> <typelib tlbid="{D189D056-66F1-4C01-8EB9-1F95BA11254A}" version="1.0" helpdir="" flags="hasdiskimage"/> </file> </assembly> 
+2
source

Source: https://habr.com/ru/post/1447365/


All Articles