loading modules in C++ dll in Windows 7

Questions and postings pertaining to the development of ImageMagick, feature enhancements, and ImageMagick internals. ImageMagick source code and algorithms are discussed here. Usage questions which are too arcane for the normal user list should also be posted here.
Post Reply
xentrica
Posts: 18
Joined: 2011-02-13T21:30:57-07:00
Authentication code: 8675308

loading modules in C++ dll in Windows 7

Post by xentrica »

I created a dll file written in visual studio 2005 c++ that utilizes the ImageMagick dll's. This worked fine in windows XP. In windows 7 64 bit not so good. It appears from the system errors that my dll is failing because it can no longer load the ImageMagick dll's because of permissions. How do I fix this? And will any fix be backward compatable, will it work on XP and Vista or will I need to create different versions to accomodate different OS's? Any enlightenment would be greatly appreciated.
el_supremo
Posts: 1015
Joined: 2005-03-21T21:16:57-07:00

Re: loading modules in C++ dll in Windows 7

Post by el_supremo »

Are your DLL and ImageMagick on win7 both 64-bit or both 32-bit? You might have problems if one is 32-bit and the other 64-bit.

Pete
Sorry, my ISP shutdown all personal webspace so my MagickWand Examples in C is offline.
See my message in this topic for a link to a zip of all the files.
xentrica
Posts: 18
Joined: 2011-02-13T21:30:57-07:00
Authentication code: 8675308

Re: loading modules in C++ dll in Windows 7

Post by xentrica »

Both are 32-bit.
el_supremo
Posts: 1015
Joined: 2005-03-21T21:16:57-07:00

Re: loading modules in C++ dll in Windows 7

Post by el_supremo »

I've recently installed Win 7 Pro on a new computer and have been running afoul of the windows protection system. I gave up trying to understand it and just turned off user account control. Even then I had to play around with the protection scheme so that I could get at the data on a couple of external drives from a previous system.
Have a look at the permissions that are set on the DLLs that are failing and in all the containing directories. For example if CORE_RL_magick_.dll is the first one listed as failing, right click on it in Windows Explorer and see which groups or user names are listed and do the same for all the containing directories. My limited experience with this (on the external disk drives) is that if your specific username isn't in the user list then it doesn't matter what else is there. In my case the Administrators (of which I am one, and the only user on the system) had all permissions allowed on the drive's directories down to and including the file I wanted to access and it still wouldn't let me at it. So I added myself to the list in the top directory and forced it to apply it to all subdirectories and files and it finally let me at the file I wanted.

Pete
Sorry, my ISP shutdown all personal webspace so my MagickWand Examples in C is offline.
See my message in this topic for a link to a zip of all the files.
xentrica
Posts: 18
Joined: 2011-02-13T21:30:57-07:00
Authentication code: 8675308

Re: loading modules in C++ dll in Windows 7

Post by xentrica »

I went through the same. All my files have full control.
Post Reply