[..] Changer l'éditeur d'images par défaut ?

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
ldub
Niveau 1
Niveau 1
Messages : 14
Enregistré le : mar. 13 juil. 2010 16:17
Status : Hors ligne

[..] Changer l'éditeur d'images par défaut ?

#1

Message par ldub »

Bonjour,

J'utilise plusieurs éditeurs d'images pour visualiser des photos : Irfanview, Fastone Image viewer, Photo Editor, etc.

Sous Windows explorer, lorsque je veux ouvrir une image avec un éditeur autre que celui qui est installé par défaut, je suis obligé de passer par le menu contextuel "ouvrir avec".

À la fin, c'est usant.

Y a-t-il, avec Autoit, un moyen de changer à la volée l'éditeur d'images par défaut ?

Merci !
Avatar du membre
Yogui
Niveau 9
Niveau 9
Messages : 689
Enregistré le : ven. 18 avr. 2008 17:29
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#2

Message par Yogui »

je ne vois pas comment faire plus simple que le clic droit ouvrir avec ...

Dans tout les cas il faudra choisir un éditeur d'images à un moment ou à un autre...

il est possible de faire un script proposant d'ouvrir une image avec X logiciel. mais ça revient au même que le ouvrir avec... en plus long...
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#3

Message par Tlem »

Sinon, il suffit de modifier la base de registre pour les différents type d'images à ouvrir.
La modification permettra de mettre l'éditeur X en tant que programme par défaut.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
ldub
Niveau 1
Niveau 1
Messages : 14
Enregistré le : mar. 13 juil. 2010 16:17
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#4

Message par ldub »

Ne peut-on pas imaginer plus simplement :

(sous Windows explorer)
Clic = lance l'éditeur par défaut
Ctrl Clic = lance l'éditeur 2
Alt Clic = lance l'éditeur 3

Mais comment faire ça en Autoit ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#5

Message par Tlem »

C'est possible, mais cela oblige d'avoir un programme résident qui surveille l'appui des touches à la recherche des séquences que vous avez déterminé.
Je trouve cette manière de faire plutôt malsaine car elle peut être assimilée à un keylogueur ...

Je privilégierais plutôt l'ajout dans le menu contextuel d'une option qui lancerait votre utilitaire et ce dernier donnerait le choix du programme à ouvrir pour éditer l'image.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
ldub
Niveau 1
Niveau 1
Messages : 14
Enregistré le : mar. 13 juil. 2010 16:17
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#6

Message par ldub »

Merci pour votre réponse.

Deux remarques cependant :

La 1ère : j'ai déjà l'option "ouvrir avec" dans le menu contextuel de Windows explorer (c'est très pénible lorsque l'on répète l'opération x fois)

La 2de : comment identifier le fichier sur lequel on va faire un Alt clic (par ex) dans Windows explorer, pour lancer tel ou tel éditeur d'image ?

Merci,
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#7

Message par Tlem »

ldub a écrit :j'ai déjà l'option "ouvrir avec" dans le menu contextuel de Windows explorer (c'est très pénible lorsque l'on répète l'opération x fois)
C'est pas pire que de ce rappeler d'appuyer sur CTRL ou ALT en fonction de l'éditeur. :roll:
ldub a écrit :comment identifier le fichier sur lequel on va faire un Alt clic
C'est là que les choses vont devenir moins simple. C'est pour cela que je vous conseil vivement l'ajout de vos éditeurs d'images dans le menu contextuel.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
ldub
Niveau 1
Niveau 1
Messages : 14
Enregistré le : mar. 13 juil. 2010 16:17
Status : Hors ligne

[R] Changer l'éditeur d'images par défaut ?

#8

Message par ldub »

Merci vivement pour ces bons conseils.
SagePourpre
Niveau 7
Niveau 7
Messages : 442
Enregistré le : dim. 06 juil. 2008 09:11
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#9

Message par SagePourpre »

C'est très faisable et assez simple de changer une association de fichier.

L'invite ms-dos (cmd) a deux belles commandes qui permette de faire cela :
- assoc
- ftype

Voici un petit exemple rapide pour démontrer cela

Code : Tout sélectionner

#include <Process.au3>

$test_image = @DesktopDir & '\185_0018.jpg'
$prog1 = 'C:\Program Files (x86)\Mozilla Firefox\firefox.exe'
$prog2 = 'C:\Program Files (x86)\Internet Explorer\iexplore.exe'



_RunDOS('ftype images=' & $prog1 & ' %1') ; création d'un nouveau type de fichier pointant vers un programme

_RunDOS('assoc .jpg=images') ; association des fichiers .jpg à mon nouveau type de fichier
ShellExecute($test_image) ; exécution de l'image ( uniquement pour montrer concrètement le résultat)


_RunDOS('ftype images=' & $prog2 & ' %1') ; le type de fichier images, à lequel est maintenant attaché l'extension .jpg pointe vers un second programme
ShellExecute($test_image)


 
Le Sage Pourpre, pour qui la vie est tellement
plus belle vue du haut de son Pouf = )
SagePourpre
Niveau 7
Niveau 7
Messages : 442
Enregistré le : dim. 06 juil. 2008 09:11
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#10

Message par SagePourpre »

En utilisant la méthode précédente, il serait possible de créer un "point de passage" pour tes images.

Si par exemple tu utilises ftype pour pointer vers un exécutable autoit ressemblant à ceci :

Code : Tout sélectionner

#include <Misc.au3>
If $CmdLine[0] < 1 Then Exit
Local $param = ''
For $i = 1 To $CmdLine[0]
    $param &= $CmdLine[$i] & ' '
Next
$param = StringTrimRight($param, 1)


If _IsPressed(10) Then
    ShellExecute('iexplore.exe','"' & $param & '"')
Else
    ShellExecute('firefox.exe','"' & $param & '"')
EndIf
 
tu aurais ta détection.

Dans cet exemple, si la touche shift est appuyée lorsque tu ouvres ton fichier, il sera ouvert
dans internet explorer, sinon dans firefox.

Tu pourrais faire ouvrir une gui demandant l'application à choisir si shift est pressée ou à peu près
n'importe quoi...

En gros, plutôt que d'ouvrir directement le fichier, je passe en paramètre le nom du fichier à mon exécutable autoit,
qui lui l'utilise pour lancer le programme approprié.
Le Sage Pourpre, pour qui la vie est tellement
plus belle vue du haut de son Pouf = )
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#11

Message par timmalos »

Hmmm très bonne idée , brillant ! 8)
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#12

Message par Tlem »

Ceci n'est-il pas plus simple ?
► Afficher le texte
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
ldub
Niveau 1
Niveau 1
Messages : 14
Enregistré le : mar. 13 juil. 2010 16:17
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#13

Message par ldub »

Voici ma solution.

Mon but était de lancer sous WINDOWS explorer (pas sous Internet explorer) :
- soit l'éditeur d'images par défaut (clic)
- soit un autre éditeur d'images (via les touches maj + clic par ex.)

car j'ai souvent besoin de visualiser une ou plusieurs images à la fois à l'aide de divers éditeurs d'image (chaque éditeur a ses qualités).

Dans l'exemple fourni, la combinaison de touches MAJ+CLIC édite le fichier image avec Fastone Viewer (qui n'est pas mon éditeur par défaut).
La touche de sortie, WIN de droite, est un peu exotique.
Fichiers joints
Maj_clic_lance_Fastone_viewer.au3
(1.95 Kio) Téléchargé 59 fois
SagePourpre
Niveau 7
Niveau 7
Messages : 442
Enregistré le : dim. 06 juil. 2008 09:11
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#14

Message par SagePourpre »

Ta dernière solution est loin d'être idéale.

Démarre le gestionnaire des tâches et va sous l'onglet performance.
Ensuite, démarre ton script et regarde la charge cpu.

En ajoutant

Code : Tout sélectionner

Sleep(1)
 
tu vas réduire de beaucoup la charge que tu imposes à ton processeur.


Une meilleure méthode encore serait d'utiliser un hook souris pour détecter les clics sours plutôt qu'une boucle.



Ceci dit, l'avantage de la redirection que j'avais proposé était qu'il n'y avait aucun script
en permanence d'ouvert. Le script était seulement lancé chaque fois qu'une image était ouverte
afin d'ouvrir le programme correspondant et puis refermé immédiatement après.
Le Sage Pourpre, pour qui la vie est tellement
plus belle vue du haut de son Pouf = )
ldub
Niveau 1
Niveau 1
Messages : 14
Enregistré le : mar. 13 juil. 2010 16:17
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#15

Message par ldub »

Effectivement la charge du CPU de mon code est lourde, même avec un sleep(1).

En ce qui concerne le hook souris, je vais peut-être essayer m'y mettre.

Quant à la redirection que tu avais proposé, elle est très alléchante et j'aurai bien tord de ne pas commencer un test de ce côté là.

Merci pour tes remarques lumineuses.
ldub
Niveau 1
Niveau 1
Messages : 14
Enregistré le : mar. 13 juil. 2010 16:17
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#16

Message par ldub »

Tlem,

Pourrais-je avoir quelques explications sur ce que vous proposez :

Merci,
SagePourpre
Niveau 7
Niveau 7
Messages : 442
Enregistré le : dim. 06 juil. 2008 09:11
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#17

Message par SagePourpre »

La solution de TLEM consiste à ajouter des éléments dans le menu contextuels correspondant
à chaque programme d'édition d'images.
Le Sage Pourpre, pour qui la vie est tellement
plus belle vue du haut de son Pouf = )
ldub
Niveau 1
Niveau 1
Messages : 14
Enregistré le : mar. 13 juil. 2010 16:17
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#18

Message par ldub »

à SagePourpre :

J'ai essayé ça :

Code : Tout sélectionner

#include <Process.au3>
$test_image = @WorkingDir & '\1.jpg'
$prog1 = 'C:\Program Files\Fichiers communs\Microsoft Shared\PhotoEd\PHOTOED.EXE'
$prog2 = 'C:\Program Files\IrfanView\i_view32.exe'

_RunDOS('ftype images=' & $prog1 & ' %1') ; création d'un nouveau type de fichier pointant vers un programme
_RunDOS('assoc .jpg=images') ; association des fichiers .jpg à mon nouveau type de fichier
ShellExecute($test_image) ; exécution de l'image ( uniquement pour montrer concrètement le résultat)
sleep(1000)
_RunDOS('ftype images=' & $prog2 & ' %1') ; le type de fichier images, à lequel est maintenant attaché l'extension .jpg pointe vers un second programme
ShellExecute($test_image)
Ça ne marche pas (Windows XP Pro).
Pas même en ligne de commande.
Ça m'aurait pourtant bien plu comme solution !
SagePourpre
Niveau 7
Niveau 7
Messages : 442
Enregistré le : dim. 06 juil. 2008 09:11
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#19

Message par SagePourpre »

Huh ?


Je suis tellement incrédule face au fait que ça ne puisse pas fonctionner sous
xp que j'installe ma machine virtuelle xppro dès maintenant et je te reviens là-dessus dans
moins d'une heure.



edit :

J'ai tenté l'expérience sur WinXp Pro Sp3 et je n'ai eu aucun problème.


En remplaçant un de tes programmes par iexplore.exe, s'exécute-t-il correctement ?
La seule optique que j'envisage est un mauvais chemin donné au programme mais dans ce
cas, il y'aurait un message d'erreur lorsque tu exécutes le script.

Y'a-t'il un message d'erreur ?





edit 2 :

En ligne de commandes, ça donne :
(testé avec succès sous xp pro sp3 )
Image
Le Sage Pourpre, pour qui la vie est tellement
plus belle vue du haut de son Pouf = )
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Changer l'éditeur d'images par défaut ?

#20

Message par Tlem »

@ldub
Merci de prendre en compte les règles de ce forum et en particulier ceci : http://www.autoitscript.fr/forum/viewto ... 896#p24896
Cela m'évitera d'avoir à éditer vos messages.

Pour votre problème, ma solution ne vous parait pas plus simple ?
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Répondre