Quantcast
Channel: Common Language Runtime Internals and Architecture forum
Viewing all articles
Browse latest Browse all 1710

reg-free COM with VB6 exe/.Net dll

$
0
0

hope this is the right forum...

 

i'm trying to get a vb6 exe running with reg-free COM, referencing a VB.Net dll.  on XP i get the useless "configuration incorrect" error on startup.  on Vista i get a 429 on activation.  in the event log there's a SideBySide event saying "

Activation context generation failed for "C:\...\Project1.exe.Manifest". Dependent Assembly System,publicKeyToken="b77a5c561934e089",version="2.0.0.0" could not be found. Please use sxstrace.exe for detailed diagnosis.

"

 

I've created a vb.net class library, and added the following to Class1

Imports

System.Runtime.InteropServices

<Guid(

"420fed7d-41b8-44bb-8752-57ab3782bb31")> _

Public

Interface IClass1

Sub Test()

End

Interface

<Guid(

"c34a8893-eaaa-4a87-8b2a-2d4b1e94a10a"), ClassInterface(ClassInterfaceType.None), ProgId("RegFree.Class1.1.0")> _

Public

Class Class1

Implements IClass1

PublicSub Test() Implements IClass1.Test

MsgBox(

"hello from vb.net")

EndSub

End

Class

 

after building the dll (which is called RegFreeClassLibrary1), i used genman32 to generate and then embed a manifest that looks like:

<?

xmlversion="1.0"encoding="UTF-8"standalone="yes"?>

<

assemblyxmlns="urnTongue Tiedchemas-microsoft-com:asm.v1"manifestVersion="1.0">

<

assemblyIdentity

name="RegFreeClassLibrary1"

version="1.0.0.0"

processorArchitecture="MSIL" />

<

clrClass

clsid="{C34A8893-EAAA-4A87-8B2A-2D4B1E94A10A}"

progid="RegFree.Class1.1.0"

threadingModel="Both"

name="RegFreeClassLibrary1.Class1"

runtimeVersion="v2.0.50727">

</

clrClass>

<

filename="RegFreeClassLibrary1.dll">

</

file>

</

assembly>

 

i've created a simple Standard EXE project, with the following code in Form1

Private Sub Command1_Click()
    Dim foo As RegFreeClassLibrary1.Class1
    Set foo = New Class1
    foo.Test
End Sub

 

and a Project1.exe.manifest file containing:

<?

xmlversion="1.0"encoding="utf-8"?>

<

assemblymanifestVersion="1.0"xmlns="urnTongue Tiedchemas-microsoft-com:asm.v1">

<

assemblyIdentityname="Project1.exe"version="1.0.0.0"language="neutral"processorArchitecture="x86"type="win32" />

<

dependency>

<

dependentAssembly>

<

assemblyIdentityname="RegFreeClassLibrary1"version="1.0.0.0"processorArchitecture="MSIL"/>

</

dependentAssembly>

</

dependency>

</

assembly>

 

 

It all looks text book to me, but it fails trying to look for a manifest in System.dll:

=================
Begin Activation Context Generation.
Input Parameter:
 Flags = 0
 ProcessorArchitecture = x86
 CultureFallBacks = en-US;en
 ManifestPath = C:\Users\rodman\Documents\Visual Studio 2005\Projects\Binaries\Project1.exe.Manifest
 AssemblyDirectory = C:\Users\rodman\Documents\Visual Studio 2005\Projects\Binaries\
 Application Config File =
-----------------
INFO: Parsing Manifest File C:\Users\rodman\Documents\Visual Studio 2005\Projects\Binaries\Project1.exe.Manifest.
 INFO: Manifest Definition Identity is Project1.exe,processorArchitecture="x86",type="win32",version="1.0.0.0".
 INFO: Reference: RegFreeClassLibrary1,processorArchitecture="MSIL",version="1.0.0.0"
INFO: Resolving reference RegFreeClassLibrary1,processorArchitecture="MSIL",version="1.0.0.0".
 INFO: Resolving reference for ProcessorArchitecture MSIL.
  INFO: Resolving reference for culture Neutral.
   INFO: Applying Binding Policy.
    INFO: No binding policy redirect found.
   INFO: Begin assembly probing.
    INFO: Did not find the assembly in WinSxS.
    INFO: Attempt to probe manifest at C:\Users\rodman\Documents\Visual Studio 2005\Projects\Binaries\RegFreeClassLibrary1.DLL.
    INFO: Manifest found at C:\Users\rodman\Documents\Visual Studio 2005\Projects\Binaries\RegFreeClassLibrary1.DLL.
   INFO: End assembly probing.
INFO: Resolving reference RegFreeClassLibrary1.mui,language="&#x2a;",processorArchitecture="MSIL",version="1.0.0.0".
 INFO: Resolving reference for ProcessorArchitecture MSIL.
  INFO: Resolving reference for culture en-US.
   INFO: Applying Binding Policy.
    INFO: No binding policy redirect found.
   INFO: Begin assembly probing.
    INFO: Did not find the assembly in WinSxS.
    INFO: Did not find manifest for culture en-US.
   INFO: End assembly probing.
  INFO: Resolving reference for culture en.
   INFO: Applying Binding Policy.
    INFO: No binding policy redirect found.
   INFO: Begin assembly probing.
    INFO: Did not find the assembly in WinSxS.
    INFO: Did not find manifest for culture en.
   INFO: End assembly probing.
INFO: Parsing Manifest File C:\Users\rodman\Documents\Visual Studio 2005\Projects\Binaries\RegFreeClassLibrary1.DLL.
 INFO: Manifest Definition Identity is RegFreeClassLibrary1,processorArchitecture="MSIL",version="1.0.0.0".
 INFO: Reference: System,publicKeyToken="b77a5c561934e089",version="2.0.0.0"
 INFO: Reference: System.Data,publicKeyToken="b77a5c561934e089",version="2.0.0.0"
 INFO: Reference: System.Xml,publicKeyToken="b77a5c561934e089",version="2.0.0.0"
INFO: Resolving reference System,publicKeyToken="b77a5c561934e089",version="2.0.0.0".
 INFO: Resolving reference for ProcessorArchitecture System,publicKeyToken="b77a5c561934e089",version="2.0.0.0".
  INFO: Resolving reference for culture Neutral.
   INFO: Applying Binding Policy.
    INFO: No publisher policy found.
    INFO: No binding policy redirect found.
   INFO: Begin assembly probing.
    INFO: Did not find the assembly in WinSxS.
    INFO: Attempt to probe manifest at C:\Windows\assembly\GAC\System\2.0.0.0__b77a5c561934e089\System.DLL.
    INFO: Attempt to probe manifest at C:\Users\rodman\Documents\Visual Studio 2005\Projects\Binaries\System.DLL.
    INFO: Attempt to probe manifest at C:\Users\rodman\Documents\Visual Studio 2005\Projects\Binaries\System.MANIFEST.
    INFO: Attempt to probe manifest at C:\Users\rodman\Documents\Visual Studio 2005\Projects\Binaries\System\System.DLL.
    INFO: Attempt to probe manifest at C:\Users\rodman\Documents\Visual Studio 2005\Projects\Binaries\System\System.MANIFEST.
    INFO: Did not find manifest for culture Neutral.
   INFO: End assembly probing.
 ERROR: Cannot resolve reference System,publicKeyToken="b77a5c561934e089",version="2.0.0.0".
ERROR: Activation Context generation failed.
End Activation Context Generation.

 

 

 


Viewing all articles
Browse latest Browse all 1710

Trending Articles