ImageMagick / ImageMagick

🧙‍♂️ ImageMagick 7
https://imagemagick.org
Other
12.24k stars 1.36k forks source link

Windows Installer option ImageMagickObject is missing #4820

Closed marcoklemm closed 2 years ago

marcoklemm commented 2 years ago

ImageMagick version

7.1.0-23-Q16-HDRI-x64-dll

Operating system

Windows

Operating system, version and so on

Windows 11

Description

Hi there, I could not install ImageMagickObject, because the option is not visible in the windows installer. Please see the steps and screenshots below. Using an old binary worked (ImageMagick-7.0.7-27-Q16-x64-dll.exe). Thanks! Marco

Steps to Reproduce

  1. Start the installer ImageMagick-7.1.0-23-Q16-HDRI-x64-dll.exe
  2. Navigate to the "Select additional tasks"
  3. See that the option is not visible. Please see screenshot

Images

image

dlemstra commented 2 years ago

We stopped supporting this and that it why it has been removed from the installer.

marcoklemm commented 2 years ago

Thank you for the information! Is there an alternative for accessing IamgeMagick from VB?

dlemstra commented 2 years ago

You can no longer access the API but maybe you can execute something on the command line? I haven't worked in VB for ages. Maybe you will need to upgrade your project to something more modern (.NET).

marcoklemm commented 2 years ago

That would be a good idea. However, I use it within a Powerpoint VBA-macro for creating images of slides. For now, it is okay for me to use an older version of ImageMagick. Thanks again for clarifying!

mwolfe02 commented 2 years ago

@dlemstra Was there any particular reason that you stopped supporting ImageMagickObject?

As far as I can tell, it was simply a thin, COM-compatible wrapper around the same functionality available via the command line. Since all it seemed to be doing was passing the information along, it seems like any updates made to the core ImageMagick code would have essentially flowed through to the COM object. Or am I missing something?

It looks like the reason it hasn't been touched in ages is that it was a simple, future-proof design. The last commit to the project was four years ago when basic support was added for the "Magick" tool. That commit itself highlights the simplicity of the implementation.

As for this response:

You can no longer access the API but maybe you can execute something on the command line? I haven't worked in VB for ages. Maybe you will need to upgrade your project to something more modern (.NET).

I don't think the ImageMagickObject was ever really accessing the API anyway. As I said, it seems like it's nothing more than a thin wrapper around the command line interface. My point being I don't think it matters that the project has not gotten regular updates...it simply doesn't need them.

Is there any chance you would reconsider exposing the COM object in future builds? I'm trying to decide whether I need to start rewriting my applications to use a different approach.

P.S. Sorry for cross-posting, but I think this is a more appropriate place for my comments.

dlemstra commented 2 years ago

You will need to rewrite your application. COM support is gone and will stay gone.

mwolfe02 commented 2 years ago

I think dropping that support would, at the least, require a major version change from 7.x to 8.x under semantic versioning.

dlemstra commented 2 years ago

This is something that was an addition to ImageMagick and not part of the core library so we dont need to make any version bumps.

mwolfe02 commented 2 years ago

Got it. Thanks for the explanation.

Are there any Windows binaries still available from the last release that included the object or would I need to build from source?

Get Outlook for Androidhttps://aka.ms/AAb9ysg


From: Dirk Lemstra @.> Sent: Thursday, March 10, 2022 6:09:25 PM To: ImageMagick/ImageMagick @.> Cc: Mike Wolfe @.>; Comment @.> Subject: Re: [ImageMagick/ImageMagick] Windows Installer option ImageMagickObject is missing (Issue #4820)

This is something that was an addition to ImageMagick and not part of the core library so we dont need to make any version bumps.

— Reply to this email directly, view it on GitHubhttps://github.com/ImageMagick/ImageMagick/issues/4820#issuecomment-1064599850, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AACKQPMSLZVKMLLA455WNOLU7J6KLANCNFSM5NZUBSRQ. Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub. You are receiving this because you commented.Message ID: @.***>

SylvainGino commented 2 years ago

Maybe you can find an older version of ImageMagick with ImageMagickObject OLE Control on this page : https://legacy.imagemagick.org/script/download.php

mwolfe02 commented 2 years ago

Thanks for the link, @SylvainGino. I was hoping to find a Windows binary for the last version 7.x release that included the COM object, which appears to be version 7.1.0-19. It doesn't appear that those earlier minor versions of 7.1.0 are available as pre-compiled binaries (only the latest release seems to have pre-compiled binaries).

SylvainGino commented 2 years ago

I could not find any version 7 binaries with ImageMagickObject OLE Control. I finally found some 4-year-old version 6 binaries with ImageMagickObject OLE Control at this address : https://sourceforge.net/projects/imagemagick/files/im6-exes/

mwolfe02 commented 2 years ago

Thanks for your efforts, @SylvainGino. Long term, I plan to recreate the COM object's functionality with a VBA class module that builds and executes calls to the ImageMagick executable, or possibly a replacement COM object using twinBASIC.

If I do eventually get to either of those things, I will write about it on my daily Access/VBA blog, nolongerset.com. You will be able to find any future articles related to ImageMagick using the following URL: https://nolongerset.com/?ss360Query=ImageMagick