Program does now invoke methods of ActiveX-DLL

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance



Ken, I found the mistake.
Sorry, I didn't get your hint on running the component that wasn't working
by itself in the IDE, perhaps lack of sleep.
The component that wasn't working had an own object of a class that was had
the attribute GlobalMultiUse. I think I don't like that, too.

thanks a lot
"Ken Halter" wrote:

> > Unfortunately i'm still out of luck. Switching to Binary-Compatibility
> > and defining a compatibility-dll has the effect that I cannot compile the
> > whole project-group at once. I get an Error that a passing a UDT, that
>
> Compiling groups is another story (I never do that either). If everything's
> set up correctly, there should be no reason to compile an entire group,
> unless you've made changes to each component in that group. Personally, I
> load and compile one thing at a time. Groups are for debugging only here.
>
> > was defined in one dll, cannont be passed by reference to a function
> > declared in that dll.
>
> Try loading that component by itself. When you load a group, VB works very
> hard to resolve everything back into it's "source code" form. It can get
> confused easily.
>
> > Is there a problem with ActiveX-DLL referencing other ActiveX-DLLs?
>
> If you have a dll called DLLA and another called DLLB, DLLA can only
> reference DLLB if DLLB doesn't contain a reference to DLLA... aka circular
> references. They aren't allowed in VB at all. People "sneak" them in once in
> a while, but if VB knows they're there, it will complain and won't allow you
> to compile.
>
> Other than that, no... you shouldn't have a problem referencing other DLLs.
> That's a good thing since those DLLs reference other DLLs themselves (the VB
> Runtime DLLs)
>
> If you absolutely want to build an entire group at once, you'll need to exit
> VB and open that group (vbg) file in Notepad and make sure that the projects
> are getting loaded in the correct order. If you have an EXE that needs a DLL
> called DLLA and that DLL needs one called DLLB, you'll have to make sure
> DLLB is loaded first, followed by DLLA and finally the EXE. That's loading
> the group in "reverse dependency order" and insures that each component gets
> the final interface IDs for any components it requires (much easier to load
> and build one at a time, using groups for debugging only)
>
>
> Ken Halter - MS-MVP-VB - http://www.vbsight.com
> Sign up now to help keep VB support alive - http://classicvb.org/petition
> Please keep all discussions in the groups..
>
>
>
.



Relevant Pages

  • Re: Program does not invoke methods of ActiveX-DLL
    ... load and compile one thing at a time. ... > declared in that dll. ... If you have a dll called DLLA and another called DLLB, ... reference DLLB if DLLB doesn't contain a reference to DLLA... ...
    (microsoft.public.vb.com)
  • is declared in project , which is not referenced by project
    ... Note: DLLB references DLLA. ... remove and readd the reference to DLLA. ... If I reference the projects for DLLA and DLLB instead of the DLLs, ...
    (microsoft.public.dotnet.general)
  • Re: Program does not invoke methods of ActiveX-DLL
    ... >> and defining a compatibility-dll has the effect that I cannot compile the ... >> declared in that dll. ... > reference DLLB if DLLB doesn't contain a reference to DLLA... ...
    (microsoft.public.vb.com)
  • trouble debugging a DLL
    ... that DLL includes another DLL (say dllB). ... I'm having a problem debugging dllA. ...
    (microsoft.public.dotnet.languages.vb)
  • trouble debugging a DLL in VS2005
    ... that DLL includes another DLL (say dllB). ... I'm having a problem debugging dllA. ... into the call from proj1 into dllA, it immediately steps into dllB (which is ...
    (microsoft.public.vsnet.debugging)