Saturday, February 13, 2010

Macromedia Contribute and psapi.dll

Problem: When I use the Microsoft Terminal Services client to remotely connect to my computer and start Macromedia Contribute 3.x, I get the following error message: "The procedure entry point GetProcessImageFileNameW could not be located in the dynamic link library PSAPI.DLL." I hit the OK button repeatedly (about six times), and the program starts to load, begins to process templates, and then crashes and disappears.

Issue: The dynamic link library, PSAPI.DLL, that ships with Macromedia Contribute is an older version of that dynamic link library. The version in Windows XP's system folder is the newer, more advanced version.

Solution:

1) Locate and rename Contribute's PSAPI.DLL file (usually found in c:\Program Files\Macromedia\Contribute 3) to PSAPI.DLL.old.

2) Find Windows XP's version of PSAPI.DLL (usually found in c:\windows\system32), and then COPY AND PASTE it into your Contribute 3 folder. (Do *NOT* remove PSAPI.DLL from the System32 folder, or bad things will happen.)

3) Restart your Terminal Services connection, remotely connect to the computer, and test the Macromedia Contribute application to make sure it is working properly.