Announcement

Collapse
No announcement yet.

Networked .DLL's

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Networked .DLL's

    I have written a VB Game application that consists of several .DLL's
    some of which link to other .DLL's.. When I run my application on
    Windows 95, 98, ME it runs fine.. But I've tried to run this application
    on Windows NT (2000) And it continues to get a File Not Found.

    I am using a 16bit PB2.0 but apparently it can't find ANY .DLL's that
    also link to .DLL's.. This seems wierd considering the .DLL's
    can link to the GDI, and Windows .DLL's...

    Apparently when the DLL is registered it is NOT looking in the executable
    path for the other .DLL's. Is there anyway to control this? Or Specify the
    path dynamically in the Declare statement?

    I also noticed that the order in which .DLL's are Called within my VB
    application can affect whether the system can "see" them or not. Why?
    Is there something I am missing?



    ------------------
    Explorations v3.0 RPG Development System
    http://www.explore-rpg.com
    Explorations v9.10 RPG Development System
    http://www.explore-rpg.com

  • #2
    To avoid diffrent OS-behaviour when loading and "identifying"
    a DLL use complete name in your declaration.
    USER32-dll means "USER32.DLL" and not "USER32"
    WinNT will not add a default extension of ".DLL" to a filename
    without a extension.


    ------------------
    Fred
    mailto:[email protected][email protected]</A>
    http://www.oxenby.se

    Fred
    mailto:[email protected][email protected]</A>
    http://www.oxenby.se

    Comment


    • #3
      I always specify the complete name.. And I've even tried to include the
      EXACT path to the file but the system won't see it.

      Instead of using several .DLL files, I found documentation
      on the $SEGMENT option. (The only reason the files were seperated
      was because the compiler informed my I had exceeded 64K) So, now I
      can compile all the .DLL's into 1 file.. Hopefully, Win2000 NT will
      be able to see this file.



      ------------------
      Explorations v3.0 RPG Development System
      http://www.explore-rpg.com
      Explorations v9.10 RPG Development System
      http://www.explore-rpg.com

      Comment


      • #4
        DLLs created by PowerBASIC do not need to be registered. They do not benefit from
        being registered in any respect.

        If Windows claims to be unable to find a DLL, but you're sure that this can't be
        the problem... maybe it isn't the problem! Windows error messages can be singularly
        less than helpful. Possibly, it's not your DLL that's the problem, but one of the
        DLLs that your DLL relies on. Besides any DLLs that your DLL uses explicitly, there
        are various Windows system DLLs that PowerBASIC requires. If there is a problem
        with any of these, you'll get that generic "can't load" message. So, it may be
        worth checking your dependencies.

        'Course, it could be something else altogether. If you can replicate this behavior
        with a brief example, show it to us, and perhaps we can help.

        ------------------
        Tom Hanlin
        PowerBASIC Staff

        Comment

        Working...
        X