Come convertire le immagini in vari formati dal menu contestuale di Windows grazie ad IrfanView

Se anche voi, proprio come il sottoscritto, utilizzate ed amate il programma gratuito IrfanView, utile a visualizzare e modificare velocemente ogni tipo di immagine, non potete proprio perdervi il trucchetto che stiamo per presentarvi.

Avete presente la trafila che bisogna fare per convertire tra loro i vari formati di file grafici con questo software? Aprire il file, selezionare la voce Salva con nome dal menu, impostare il livello di qualità e le altre opzioni, e poi, finalmente si può effettuare il salvataggio dell’immagine nel nuovo formato desiderato.

Decisamente troppi passaggi per chi deve compiere quest’operazione molto spesso. E allora che ne dite di semplificare il tutto grazie ad un trucchetto per convertire le immagini in vari formati dal menu contestuale di Windows grazie ad IrfanView? Bene, allora ecco come fare:


  1. Assicurarsi di aver installato nel proprio sistema IrfanView
  2. Aprire il Blocco Note di Windows
  3. Copiare quanto segue ed incollarlo nel Blocco Note:
  4. ‘ (c) 2006 plamdi.com, this file must not be sold, you may distribute it
    ‘ freely so long as it remains unmodified with all internal documentation.

    ‘ This program is designed for use with IrfanView. It will add or remove
    ‘ shell extensions for converting between several popular image formats.
    ‘ If required you could add more to the list.
    ‘ In no way am I affiliated with IrfanView.

    ‘ Installation:
    ‘ 1. Double click on i_conv.vbs to install/uninstall
    ‘ 2. Run “WScript.exe i_conv.vbs” from a command prompt or the run dialogue.
    ‘ 3. Run “WScript.exe i_conv.vbs /s” to achieve a silent installation.

    ‘ Usage:
    ‘ Right click a picture with a supported format (by default BMP, PNG, GIF,
    ‘ JPG and ICO) and click “Convert to XXX” Where XXX is desired type.

    ‘ Notes on installation:
    ‘ i_conv.vbs can be run from anywhere to install so long as IrfanView is
    ‘ installed. If IrfanView isn’t found the script will not install the
    ‘ extensions, but will uninstall if asked. If IrfanView was not installed
    ‘ correctly, or if it isn’t found automatically with installation simply
    ‘ copy this file to the IrfanView folder and run from there.

    ‘ When this file is run it will automatically place a copy into your
    ‘ IrfanView folder (where possible), and you can delete any other installation
    ‘ point as it will not be needed.

    ‘ You can uninstall the shell extensions through “Add or Remove Programs” in
    ‘ Control Panel. Uninstallation will not delete i_conv.vbs, delete the file
    ‘ manually if required.

    ‘ If you prefer you can use /silent instead of /s. Silent installations
    ‘ suppress error messages if it cannot be installed.

    ‘ Other Notes:
    ‘ This will also write a configuration file for use exclusively with the shell
    ‘ extensions. You can modify it at any time. It is put in a new folder named
    ‘ “i_conv”.
    ‘ ————————————————————————–

    ‘ Define variables.
    Option Explicit
    On Error Resume Next
    Dim WshShell,fso,a,f,i,j,o,p,t,u,v,w:w=0
    Set WshShell=WScript.CreateObject(“WScript.Shell”)
    Set fso=CreateObject(“Scripting.FileSystemObject”)
    p=Left(WScript.ScriptFullName,Len(WScript.ScriptFullName)-Len(WScript.ScriptName))
    If Wscript.Arguments.Count=1 Then
    If Wscript.Arguments(0)=”REM” Then
    ‘ This is invoked from “Add or Remove Programs”.
    v=MsgBox(“Are you sure you want to remove the image-conversion shell extensions?”,292,”Remove shell extensions confirmation”)
    If v=7 Then WshShell=Nothing:Wscript.Quit(1)
    w=7
    ElseIf UCase(Wscript.Arguments(0))=”/S” Or UCase(Wscript.Arguments(0))=”/SILENT” Then
    ‘ If We are running a silent install preset variables.
    w=6
    Else
    ‘ We have invalid command parameters.
    ErrHndlr()
    End If

    ‘ This is the part used for conversion, it’s extremely simple – it takes two
    ‘ variables, one is a file name, the other a file extensions – such as BMP and
    ‘ JPG, and tells IrfanView to convert file name to file format, after checking
    ‘ if destination file exists, and if necessary asking the user whether to
    ‘ overwrite or not.
    ElseIf Wscript.Arguments.Count=2 Then
    t=Wscript.Arguments(0):u=Wscript.Arguments(1)
    For i=Len(t) To 2 Step -1
    If Mid(t,i,1)=”.” Then Exit For
    Next’i
    If i=1 Then ErrHndlr()’ We have invalid command parameters.
    v=Right(t,Len(t)-i)
    If v=UCase(v)Then u=UCase(u)
    u=Left(t,i)&u
    If fso.fileexists(u) Then
    v=MsgBox(“Destination file exists, ok to overwrite?”,292,”Overwrite confirmation”)
    If v=7 Then WshShell=Nothing:Wscript.Quit(1)
    End If
    WshShell.Run(“”””&p&”i_view32.exe”” “””&t&””” /convert=”””&u& “”” /ini=”””&p&”i_conv”””),1
    Set WshShell=Nothing
    Wscript.Quit(1)
    ElseIf Wscript.Arguments.Count<>0 Then
    ‘ We have invalid command parameters.
    ErrHndlr()
    End If

    ‘ Everything after this is only run if you open the file directly. This means
    ‘ you either want to set up the shell extensions, or remove them. We check
    ‘ first for IrfanView, and if we can’t find it then installing the shell
    ‘ extensions will be disabled.
    If fso.fileexists(p&”i_view32.exe”) Then
    If UCase(WScript.ScriptFullName)<>UCase(p&”I_CONV.VBS”) Then
    ‘ If IrfanView is found in the folder this file is run from, and i_conv.vbs
    ‘ is incorrectly named, create a usable copy called i_conv.vbs.
    ‘ Otherwise we are sweet to go!
    fso.CopyFile WScript.ScriptFullName,p&”i_conv.vbs”
    End If
    Else
    ‘ IrfanView wasn’t found in the folder that i_conv.vbs was run from, so let’s
    ‘ search for it.. best place to look first is in the registry, IrfanView
    ‘ doesn’t have it’s own key under HKLM\SOFTWARE, so we’ll see if it’s
    ‘ uninstall entry will point the way.
    p=WshShell.RegRead(“HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\IrfanView\UninstallString”)
    p=Left(p,Len(p)-16)
    If fso.fileexists(p&”i_view32.exe”) Then
    ‘ If IrfanView is found then all we need do is put i_conv.vbs into its folder.
    fso.CopyFile WScript.ScriptFullName,p&”i_conv.vbs”
    ElseIf fso.fileexists(WshShell.Environment(“PROCESS”)(“ProgramFiles”)&”\irfanview\i_view32.exe”) Then
    ‘ We still haven’t found IrfanView… so the other place to look is in the
    ‘ computer’s Program Files folder. We won’t find it if the user has installed
    ‘ to a personalized location.
    ‘ As above we will need to put i_conv.vbs in the IrfanView folder.
    p=WshShell.Environment(“PROCESS”)(“ProgramFiles”)&”\IrfanView\”
    fso.CopyFile WScript.ScriptFullName,p&”i_conv.vbs”
    Else
    ‘ IrfanView was not found. Ask if user wants to uninstall extensions and exit.
    ‘ Unless we’re meant to be doing a silent install, in which case we’ll just
    ‘ end without alerting the user.
    If w=6 Then
    WshShell=Nothing:Wscript.Quit(0)
    ElseIf w<>7 Then
    v=MsgBox(“IrfanView not found. Would you like to remove the shell extensions?”,292,”Remove shell extensions”)
    If v=7 Then WshShell=Nothing:Wscript.Quit(1)
    End If
    End If
    End If

    ‘ OK we’re now ready to add or remove the shell extensions!
    ‘ Define the image formats we are going to use – I’ve included 5 as default,
    ‘ feel free to add more just remember to change the declaration of the “q”
    ‘ array to the correct size. It is important that if you want to do this to
    ‘ first remove the shell extensions before modifying the file.
    Dim q(4):q(0)=”bmp”:q(1)=”gif”:q(2)=”ico”:q(3)=”jpg”:q(4)=”png”

    ‘ Ask user for input, unless we already know to install/uninstall that is.
    If w=0 Then w=MsgBox(“Do you want the image-conversion shell extensions?”,292,”Enable/Disable shell extensions”)

    ‘ Write a custom .ini file for use with conversions, you may customize this
    ‘ but it’s probably easier to edit the .ini once it’s installed.
    If w=6 Then
    o=”[PNG]”&vbCrLf&”CompressionLevel=6″&vbCrLf&”[JPEG]”&vbCrLf&”Save Quality=85″&vbCrLf&”Save Progressive=0″&vbCrLf&_
    “Save Grayscale=0″&vbCrLf&”KeepExif=0″&vbCrLf&”KeepCom=0″&vbCrLf&”KeepIptc=0″&vbCrLf&”[MultiGIF]”&vbCrLf&_
    “SaveInterlaced=0″&vbCrLf&”SaveTransparent=0″&vbCrLf&”UsePalette=0″&vbCrLf&”Transparency=0″
    fso.CreateFolder(p&”\i_conv”):fso.DeleteFile(p&”\i_conv\i_view32.ini”)
    Set f=fso.CreateTextFile(p&”\i_conv\i_view32.ini”, True):f.Write o:f.Close
    Else
    ‘ Or delete it if we’re uninstalling.
    fso.DeleteFile(p&”\i_conv\i_view32.ini”)
    fso.DeleteFolder(p&”\i_conv”)
    End If
    ‘ Go through the registry and make the necessary changes…
    For i=0 To UBound(q)
    a=WshShell.RegRead(“HKCR\.”&q(i)&”\”)
    If a<>“” Then
    a=”HKCR\”&a&”\shell\”
    For j=0 To UBound(q)
    If i<>j Then
    t=a&”Convert_to_”&UCase(q(j))&”\”
    If w=6 Then
    WshShell.RegWrite t,”Convert to “&UCase(q(j))
    WshShell.RegWrite t&”command\”,”WScript.exe “””&p&”i_conv.vbs”” “”%d”” “&q(j)
    Else
    WshShell.RegDelete t&”command\”:WshShell.RegDelete t
    End If
    End If
    Next’j
    t=a&”Remove_Image_Conversion_Shell_Extensions\”
    t=”HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\i_conv\”
    If w=6 Then
    WshShell.RegWrite t,””
    WshShell.RegWrite t&”DisplayName”,”Image Conversion Shell Extensions (Removal)”
    WshShell.RegWrite t&”UninstallString”,”WScript.exe “””&p&”i_conv.vbs”” REM”
    WshShell.RegWrite t&”NoModify”,1,”REG_DWORD”
    WshShell.RegWrite t&”NoRepair”,1,”REG_DWORD”
    Else
    WshShell.RegDelete t&”NoModify”:WshShell.RegDelete t&”NoRepair”
    WshShell.RegDelete t&”UninstallString”:WshShell.RegDelete t&”DisplayName”:WshShell.RegDelete t
    End If
    End If
    Next’i
    Set WshShell=Nothing
    Wscript.Quit(1)

    sub ErrHndlr()
    MsgBox “Invalid parameters were given. The only correct user command line is /s or /silent.”,16,”i_conv.vbs error”
    Set WshShell=Nothing
    Wscript.Quit(0)
    End Sub

  5. Salvare il file come I_CONV.VBS
  6. Chiudere il Blocco Note
  7. Aprire tramite doppio click il file appena creato
  8. Dare l’OK

Ecco fatto! Adesso vi basterà fare click destro su una qualsiasi immagine per avere accesso alle opzioni di conversione diretta nel menu contestuale. Due click ed il gioco è fatto, meglio di così?

25 commenti su “Come convertire le immagini in vari formati dal menu contestuale di Windows grazie ad IrfanView”

  1. Ciao zio,
    scusa se invece di commentare ti invio una richiesta di tutt’altro genere. Te che sei una autorità suprema potresti suggerirmi qual’è il miglior servizio pay per click per PUBLISHER?
    Se ne say qualcosa in più per favore contattami via e mail. Grazie a prescindere dall’eventuale aiuto

    Rispondi
  2. Non mi funziona.. errore di carattere non valido in riga tale.. modificato i vari caratteri che non gli piacevano (apici non riconosciuti.. doppi apici ecc) con trova e sostituisci.. ma niente.. adesso riga 143 carattere 51 attesa fine istruzione..
    Perchè non metti in download il file bello e fatto?
    Grazie 🙂

    Rispondi

Lascia un commento