i have managed to build a static linked application that was using
my self-compiled multi-threaded static magick-libs. i also had to comment
out or #undef the HasXML, HasWMFlite and HasJP2 entries in
magick-config.h to get it linked with my own project.
i had to ignore the msvcrt.lib, too.
unfortunately i am using other libraries that won't link to a mutli-threaded-
non-dll project.
so i am currently thinking of building the dlls from source but
i have already spent several days in vain on getting the project running
with self-compiled dlls, so there might be missing those mysterious
registry-entries again...
shouldn't it be possible to use the self-compiled dynamic-multithreaded
runtimes instead WITHOUT adding any entries to the registry?
[edit]
i have finally managed to build a small example-application that could
use imagemagick/magick++ without having the binary package installed.
to do so, i built the static multi-threaded libs from the imagemagick
sources and made a DLL that is statically llinked to the magick-libs (i know
how silly this sounds), containing the function that finally calls the
magick++-routines. now i can call the function from the dll from
any application without having imagemagick installed and without needing
any magick-libs or headers in the project.
this might be a weird work-around but it works for me until now and i will
find out, if i can wrap all my functions that use use imagemagick into
that DLL.
btw. my sample-application currently only opens an image, flips it and writes
the result back to disk and the static DLL is already at 3.5mb