I'm stumped.

I have a old VB6 Oulook Addin that I was recently contracted to "skin" in order to bring the UI up to speed for a client.

To do so I utilized a third party component that handled the requisite Win32 API calls.

Anyhow.. I built in an XP environment. Worked fine. Now, as I test deployment on Vista/Win7 machines I'm greeted by the infamous "Run Time Error 48, File Not Found" the first time I make a call to it.

As noted, it's a non-registering DLL, so the calls are made through late binded function calls:

(i.e) Public Declare Function "File" Lib "File.DLL" - in a VB6 module.

Anyhow.. it IS finding the file. I pulled up ProcMon and it's showing NO issues locating and interacting with the DLL so it seems to be failing internally for some reason.

I set up a dev environment on Win7/Vista and I CAN run the application if operating out of the VB6 process. When compiled however and running as an addin within the Outlook.EXE process, it fails.

I also set up a small hello world type app that utilizes the DLL and that works as well, compiled or in debug (although in its own process, not Outlook.EXE).

I'm REALLY stumped now. Any insight would be greatly appreciated as I'm approaching a deadline.

I also loaded up Dependency Walker although I can't profile since it's a late binded DLL that runs through the Outlook process. It's shows two issues on the test machine where it's failing but I feel like they may be false flags.

Here's a screen shot of the log:

https://dl.dropbox.com/u/5064321/depends.png