22

In Windows, a command called convert is used to convert the filesystems. When you type convert, it will ask you to specify a filesystem.

In ImageMagick, convert command is used for image processing.

The problem is, even after setting the environment variable for ImageMagick convert, the tool doesn't get invoked. It calls only the Windows convert command. How to override that?

Palec
  • 12,743
  • 8
  • 69
  • 138
vettipayyan
  • 3,150
  • 3
  • 25
  • 34

5 Answers5

40

This is an old question, but the current solution with ImageMagick 7 is to use the "magick" command in place of "convert".

Tom Robinson
  • 1,850
  • 1
  • 15
  • 14
5

This is an old question, but I encountered this problem today, and this is my solution in Windows 7.

Windows convert.exe is located in folder C:\Windows\System32, so you have to modify the Windows PATH variable by putting the ImageMagick path (for example C:\Libs\ImageMagick-6.8.8-4) before the path that loads System32 (ie. %SystemRoot%\System32).

This will cause all ImageMagick executables to take priority over any similarly named system executables, which should do what you want but may cause unexpected behaviour.

Also, when you want to use the system convert.exe, you'll have to specify the full pathname such as C:\Windows\System32\convert.exe.

mgambella
  • 152
  • 1
  • 5
5

Renaming the ImageMagick convert.exe worked well for me.

I didn't like using full path each time, and changing the system PATH variable isn't possible for me on the work PC.

After renaming convert.exe to imgconvert.exe, no other changes were needed. You could now use the new command anywhere from the command line without it being confused with the intrinsic Windows file system convert


Edit: As of version 7.0, the command is now magick.exe, which no longer clashes with any native windows commands. So downloading the latest version if possible should solve the problem as well.

Tymric
  • 300
  • 1
  • 8
  • 18
  • 1
    I agree. I wouldn't change the PATH variable to place non-system executables before system executables, because programs might depend on it. If you don't want to rename either, consider making a symbolic link like so: mklink "C:\IM6-Path\convert-im6.exe" "C:\IM6-Path\convert.exe". – wensveen Jun 08 '15 at 07:52
  • 1
    Yes. Every other solution requires extra work (typing the whole path), or some how mucking with system config. This is straight forward and simple. – dgo Aug 12 '16 at 15:16
  • 2
    where is(was) `convert.exe`? – jessexknight Jun 20 '18 at 00:16
3

Did you logoff and login?

Or specify the Imagemagick's convert by providing the complete path

abRao
  • 2,787
  • 1
  • 25
  • 37
  • 1
    Thank u . Is there any way other providing complete path ? – vettipayyan Dec 19 '10 at 04:30
  • Did you verify the "Environment variables" listed at http://www.imagemagick.org/script/resources.php Also check this link http://drupal.org/node/217960 – abRao Dec 19 '10 at 06:44
1

In powershell you can run this: $env:Path = "C:\path-to-convert\;$env:Path"

Now the imagemagick convert exe gets found because it comes first in the path.

Jared Beach
  • 2,635
  • 34
  • 38