Page 1 of 1

ErrorMissingDelegate at Memory Location

Posted: 2017-03-03T00:25:41-07:00
by rajeevraina
I am using Windows7 32 bit with Visual Studio 2008.

I downloaded the binary installation and installed it successfully.
1. Create Desktop Icon - Ticked
2. Add application directory to your system path - Ticked
3. Install development headers and libraries for c and C++ - Ticked

I even converted some PNG images using the command prompt.

Then I opened Magic++_Demo.dsw and compiled it.
It failed because the library name used was "CORE_RL_magic.lib" where as the actual library in the lib folder is "CORE_RL_Magic.lib".
I Changed the library names in the project properties and it compiled successfully.

But When I run it I get the following error on the line number 61 button.read( backGround)

Magick::ErrorMissingDelegate at memory location 0x0012fafc.

On the command prompt, I even checked the delegates and PNG is in the list.

I am struggling it with for more than 3 days and need to get a resolution at the earliest. Kindly look into my issues and advise.

Re: ErrorMissingDelegate at Memory Location

Posted: 2017-07-13T00:08:36-07:00
by paul
Did you find a solution in the meantime?

I get the same error running my Application using ImageMagick.

I copied all needed DDL's into the folder "c:\Program Files (x86)\Common Files\MyCompany\MyApp".
I got alway this error.
The reason is this code:
// Read PBM file from disk
Image image( cspbmFile.c_str( ) );

If I install "ImageMagick-7.0.6-0-Q16-x86-dll.exe" it is working.

But I don't want that everybody has to install this Setup within my Application Setup.
For this I copied "ALL" existing DLL’s into the CommonFiles folder. But it doesn’t work.

What can I do?

I think there is a registry entry missed.

Re: ErrorMissingDelegate at Memory Location

Posted: 2017-07-13T04:34:05-07:00
by snibgo
@rajeevraina: I'm not clear what you have installed. Perhaps you haven't installed delegates that you can build programs with. You installed a binary IM, so that doesn't need development libraries for the delegates.
paul wrote:I think there is a registry entry missed.
I think the portable version doesn't use the registry, and can be moved to a different directory. The other versions can't be moved after installation.

Re: ErrorMissingDelegate at Memory Location

Posted: 2017-07-13T22:04:17-07:00
by dlemstra
@paul. If you don't want your clients to install ImageMagick you probably want to statically link ImageMagick in your application.

Re: ErrorMissingDelegate at Memory Location

Posted: 2017-07-17T03:09:41-07:00
by paul
@ snibgo : What do you mean with "portable version"? What is this? Where can I get it?

I'm using "ImageMagick-7.0.6-0-Q16-x86-dll.exe" it is working.

But using all DLL's in a new separate folder and rename (or delete) the Installation path of "ImageMagick-7.0.6-0-Q16-x86-dll.exe" I got the Message:
Magick::ErrorMissingDelegate at memory location 0x0012fafc.

Re: ErrorMissingDelegate at Memory Location

Posted: 2017-07-17T07:17:52-07:00
by snibgo
You can get it from the usual Windows binary distribution http://www.imagemagick.org/script/binar ... hp#windows and search for the word "portable".

Re: ErrorMissingDelegate at Memory Location

Posted: 2017-07-17T23:40:53-07:00
by paul
[@ snibgo : Thanks for the hint, but it seems not to be I'm looking for.

I expect something with all DLL's from ImageMagick running my application. e.G.: IM_MOD_TL_****.dll and CORE_RL_****.dll within a folder "\modules\coders".

Re: ErrorMissingDelegate at Memory Location

Posted: 2017-07-18T00:25:23-07:00
by paul
Hello all,

I've found the solution for my problem.

There is a registry key "[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ImageMagick\7.0.6\Q:16]" where I have to set the key "BinPath" to my "...\Common Files\MyCompany\MyProject" folder instead of the installation path.

Now it's working. :D