Calling a non-activeX DLL in a VB6 application in Vista/Win7
Posted
by
user1490330
on Stack Overflow
See other posts from Stack Overflow
or by user1490330
Published on 2012-07-03T06:41:23Z
Indexed on
2012/07/03
9:15 UTC
Read the original article
Hit count: 221
I have a VB6 app that utilizes a non-activeX DLL (non-registering).
It's declared via the classic Public Declare Function "Function Name" Lib "Library.DLL"
syntax.
On my dev machine (XP) it works fine but when I deploy to Vista or Win7 I'm constantly greeted with a Run Time Error 48 - File Not Found for the DLL in question.
I have tried copying that DLL to every directory I can think of including every environment path on the test machine and the app path too.
These are all 32-bit test environments so it's not a SysWow64 issue.
Possibly throwing a wrench into the mix is the fact that the application in question is an Outlook COM Addin.
I managed to install VB6 on Win7 and was able to run a tiny sample app that utilizes this DLL (outside of the Outlook process) so I know it works PROVIDED the DLL is located in App path. If I call App.Path
from my DLL when I run it on the test environment it shows, to no surprise, my installation directory however the DLL is there.
I tried turning off UAC. I tried making the App.Path
directory permissions open to everyone, still no dice.
© Stack Overflow or respective owner