Numerous dependency problems loading MFC app.

Hi experts,

Hopefully this is something you've seen commonly.

I have to be able to port my MFC app (currently statically-linked to the MFC libraries) to various versions of Windows but have hit snags.  Windows XP seems to run it fine, this includes x86 and x64 versions (with IE 6 or 8 installed), but strangely not versions running IE 7.

In Vista Ultimate x86 (with IE 8) dependency-walker shows (not tested x64 yet):-

'Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module' and tehre is an hourglass and red 'window' icon next to 'IEFrame.DLL'.

Windows 7 x64 shows the same above error, but also the following 3 errors:-

- Red frame next to 'SHLWAPI.dll'
- hourglass and yellow question mark circle next to IESHIMS.dll (with error that it cannot find this file).
- hourglass / yellow question mark next to GPSVC.dll (with can't find file error).

Any ideas? I really need to get this working :(

Thanks a million if you can help,
Chris J


chrispauljarramAsked:
Who is Participating?
 
pgnatyukCommented:
SHLWAPI.dll, IEFrame.DLL. etc. - if you compile your app for 0x500 windows version and IE6 (it's all in stdafx.h) and you will set C Run-Time libraries to Multi-Thread (without DLL), I think, your app will work on the Windows versions you mentioned.
0
 
pgnatyukCommented:
You didn't mention the VS version.
You need to check C Run-Time libraries in the project settings - it should be Multi-Threaded for the release configuration (I think, this the most important point).

It makes sense to check the big values there such as _WIN32_WINNT, WINVER, WIN_32IE, etc. http://msdn.microsoft.com/en-us/library/aa383745(VS.85).aspx

It is not clear which API you use and it is not necessary that these DLLs will be installed on each computer. So you may need to load these DLLs dynamically.

If you have MFC in your app, it can be even impossible to run on all Windows versions. I hope you are not talking about Windows Me Something Enabled.
0
Cloud Class® Course: Microsoft Office 2010

This course will introduce you to the interfaces and features of Microsoft Office 2010 Word, Excel, PowerPoint, Outlook, and Access. You will learn about the features that are shared between all products in the Office suite, as well as the new features that are product specific.

 
chrispauljarramAuthor Commented:
Hi,

Have been off work for a while, will post more info on this shortly as there are still problems - thanks again for your help guys, hope you had a nice Christmas and happy new year!

Chris J
0
 
chrispauljarramAuthor Commented:
Sorry for the delays, I will need more assistance with this later but yet again have been sidetracked.  We're in the throws of a major product release at the moment and the priorities are constantly changing - I'm going to award the points for help now and when I've had a closer look I'll post a more specific question.

Thanks again,
Chris
0
 
chrispauljarramAuthor Commented:
Closed until I have more information.
0
 
TeraByteManCommented:
I had the same problem with those exact missing files. I am using VS 2008 C#. To fix the problem I changed the "Platform target: x86" rather than "any cpu". That fixed the problem for me.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.