2009-03-13 3 views
0

J'ai un fichier batch (bat/cmd) qui devrait servir de gestionnaire de type fichier pour les fichiers jpeg dans Firefox, je veux juste copier le fichier dans un autre dossier, puis ouvrez le fichier dans Picasa Viewer. Lorsque je l'exécute à partir de la ligne de commande, même si je l'exécute à partir d'un autre dossier, cela fonctionne correctement et ouvre Picasa Viewer. Cependant, en le définissant comme le gestionnaire des fichiers jpeg dans Firefox, il ne fait que copier le fichier, mais ne démarre pas Picasa."start" ne fonctionne pas dans le fichier bat lorsqu'il est utilisé comme gestionnaire de filetype dans Firefox

Voici le script (je ne suis pas un programmeur lot si cela pourrait probablement être beaucoup plus simple, vient d'être gratté ensemble de différents postes stackoverflow ...):

set topath=%~DP0 
copy %1 "%topath%" 
@echo off 

set picpath=%1 
set picpath=%picpath:\=;% 
set picpath=%picpath: =:% 

for /F "tokens=* delims=;" %%i IN (%picpath%) DO call :LAST_FOLDER %%i 
goto :EOF 

:LAST_FOLDER 
if "%1"=="" (
    set LAST2=%LAST::= % 
    start explorer "%topath%" 
    start "C:\Programfiler\Google\Picasa3\PicasaPhotoViewer.exe" "%topath%\%LAST2%" 
    goto :EOF 
) 

set LAST=%1 
SHIFT 

goto :LAST_FOLDER 

(j'ai aussi essayé d'ouvrir juste l'explorateur sur le dossier, comme vu ci-dessus.) Ainsi, n'importe qui sait pourquoi ni l'explorateur ni Picasa ne se lancent dans Firefox, mais les deux démarrent depuis la console? (En outre, l'explorateur démarre quand il fait glisser un fichier sur le script, cependant, Picasa ne le fait pas ...)

Répondre

0

Je ne l'ai pas lu suffisamment pour le comprendre mais votre chemin vers picasa semble faux plutôt que c : \ program files \ vous avez c: \ programfiler \

HTH

+0

Je pense que c'est norvégien pour "Program Files". –

+0

Oui, pour une raison quelconque, MS a décidé de localiser les répertoires système ... idiot. – unhammer

+0

Utilisez plutôt la variable d'environnement ProgramFiles, ex. % ProgramFiles% – RealHowTo

0

vous pouvez essayer de substituer start par cmd /c start. Peut-être que ça aide.

+0

Désolé, il n'a pas :-( – unhammer

1

Cette "fonctionnalité/bug" J'ai vu un certain nombre de fois en utilisant la commande start.

La commande start interprète le premier paramètre comme "title".

Essayez ça par exemple: start "c: \ windows \ system32 \ calc.exe" "c: \ windows \ system32 \ notepad.exe"

Il lancera le bloc-notes, pas calculator

donc simplement un paramètre fictif PREPEND comme ceci: début "un peu titre factice" "c: \ windows \ system32 \ calc.exe"

Il fonctionne très bien ...

+0

Maintenant vous avez mes espoirs ... Je ne pouvais pas obtenir ce travail non plus .. (Je veux dire, la chose étrange est de savoir comment cela fonctionne à partir de la ligne de commande, mais pas à partir de Firefox ...) – unhammer

1

en regardant votre code (bon sang , existe-t-il un moyen de copier/coller avec le c orrect l'alignement sur ce site? :() quelque chose comme ça pourrait aider:

jpgviewer.cmd

@echo off 
set topath=%~dp0 
copy %1 "%topath%" 
set file=%~nx1 
start explorer "%topath%" 
start "-" "%Programfiles%\Google\Picasa3\PicasaPhotoViewer.exe" "%topath%%file%" 

Hope this helps.

% ~ nx0: Obtient le nom du fichier + ext de la variable donnée (ici 0) Dommage que vous ne voyez pas, it't au lieu de Samne vous avez ~ dp partiel (aide pour).

Questions connexes