But that doesn't answer my questions... how do you get the interop to work? You have to provide some way for VFP to talk to .Net.
>Hi Craig:
>
>We don't go through COM Registration (think of DLLRegisterServer, RegisterTypeLib, etc.). We don't mess with the Register at all.
>
>No COM Hassle, not DLLRegisterServer, no need to register anything in the customer machine, this works beginning with Win98.
>
>Neither we use .NET-COM Interop to expose the .NET Types, this is how we manage to expose .NET Types like Structs (i.e. System.Drawing.Point), and other types which are not COM Visible, we also allow to pass NonZero index Arrays to .NET Methods, and we also can access overloaded methods, static (shared) methods which are not COM Callables. This way we skip the limitations of COM Interop.
>
>We don't call TLBEXP, we don't use at all System.Runtime.InteropServices.TypeLibConverter which is how the .NET Framework exposes to COM TypeLibraries a limited set of types.
>
>We like to think of it like a direct talk between VFP and the .NET Framework. To use any assembly you just have to copy the DLL of .NET Extender and assemblies you need in your customer machine an Voila, it works.
>
>The COM Guidelines tell you you have to Register your DLL's and TypeLibraries, you have to be COM Creatable through DLLGetClassObject, you have to have ProgID mapped to CLSID.
>We don't go this route, so we avoid all the issues with COM that you know.
Craig Berntson
MCSD, Microsoft .Net MVP, Grape City Community Influencer