Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am trying to run a program on my Windows 2000 machine that is installed in C:\Program Files\TradeLog. The program crashes with an "Invalid operation in GDI+ (Code: 1)" exception message. This might be an issue with gdiplus.dll on my machine. I searched for gdiplus.dll, and I found various versions of it in the following directories:

C:\Program Files\Avira\AntiVir Desktop
C:\Program Files\GDI+\asms\10\msft\windows\gdiplus
C:\Program Files\Jasc Software Inc\Paint Shop Pro 9
C:\Program Files\Nero CD-DVD Speed

I checked my PATH, and none of those directories are in my PATH, so I'm wondering which one is Windows using when I run the TradeLog program?

share|improve this question
There is a percise order that Windows will take to load a DLL. One of the first thing it does is looks in the program's directory. It then moves on to other well documented locations. You can look up the well documented order yourself. Have you tried placing the required dll in the program's installation directory? – Ramhound Apr 16 '13 at 15:26
Use Dependency Walker to determine what's loaded. – Ярослав Рахматуллин Apr 16 '13 at 15:48
up vote 1 down vote accepted

Process Explorer will show you which DLLs an application has loaded.

  1. Download and run Process Explorer
  2. Find your program in the Process list
  3. Choose the menu option View->Lower Pane View->DLLs
  4. Find gdiplus.dll in the lower pane list and right-click on it to open the context menu
  5. Choose Properties... from the menu

That'll should show you a lot of information about the DLL, including it's location.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .