[Excel] Créer LienHypertexte vers exécutable
breizh35000
Messages postés
13
Statut
Membre
-
Lucky -
Lucky -
Bonjour,
Je n'arrive pas à créer un lien hypertext qui appel un exécutable (putty.exe) mais en lui passant des arguments.
L'exemple ci-dessous fonctionne et ouvre le programme Putty :
=LIEN_HYPERTEXTE("E:\DownloadFirefox\putty.exe'";"host1")
Mais je n'arrive pas à lancer Putty avec un passage d'arguments comme ci-dessous :
=LIEN_HYPERTEXTE("E:\DownloadFirefox\putty.exe -ssh -P 22 admin@127.0.0.1 -pw pass";"host1")
Pouvez vous m'aider à constituer cette chaine ?
Je ne suis pas du tout familier avec les caractères spéciaux \ / ' ' " " [ ] ( )
Merci d'avance.
BZH
Je n'arrive pas à créer un lien hypertext qui appel un exécutable (putty.exe) mais en lui passant des arguments.
L'exemple ci-dessous fonctionne et ouvre le programme Putty :
=LIEN_HYPERTEXTE("E:\DownloadFirefox\putty.exe'";"host1")
Mais je n'arrive pas à lancer Putty avec un passage d'arguments comme ci-dessous :
=LIEN_HYPERTEXTE("E:\DownloadFirefox\putty.exe -ssh -P 22 admin@127.0.0.1 -pw pass";"host1")
Pouvez vous m'aider à constituer cette chaine ?
Je ne suis pas du tout familier avec les caractères spéciaux \ / ' ' " " [ ] ( )
Merci d'avance.
BZH
A voir également:
- [Excel] Créer LienHypertexte vers exécutable
- Créer liste déroulante excel - Guide
- Comment créer un groupe whatsapp - Guide
- Créer un compte google - Guide
- Créer un lien pour partager des photos - Guide
- Créer un compte gmail - Guide
5 réponses
function creerRaccourci( putty, nomFichierLien, cible )
{
var oShellLink = WshShell.CreateShortcut( nomFichierLien );
oShellLink.TargetPath = putty;
oShellLink.Arguments = "-load " + cible;
oShellLink.WindowStyle = 3;
oShellLink.IconLocation = putty + ", 0";
oShellLink.Save();
}
var fso = new ActiveXObject("Scripting.FileSystemObject");
fic = fso.GetFile( WScript.ScriptFullName );
// Suppression des raccourcis actuels
dest = fic.ParentFolder.Path + "\\X";
if( ! fso.FolderExists( dest ) )
{
fso.CreateFolder( dest );
}
f = fso.GetFolder( dest );
fc = new Enumerator( f.files );
for (; !fc.atEnd(); fc.moveNext())
{
x = fso.GetFile( fc.item() );
if( x.Path != WScript.ScriptFullName && x.Type == 'Raccourci' )
{
fso.DeleteFile( fc.item() );
}
}
// Lecture des sessions putty
HKCU = 0x80000001;
sRegPath = "Software\\SimonTatham\\PuTTY\\Sessions";
oLoc = new ActiveXObject("WbemScripting.SWbemLocator");
oSvc = oLoc.ConnectServer(null, "root\\default");
oReg = oSvc.Get("StdRegProv");
oMethod = oReg.Methods_.Item("EnumKey");
oInParam = oMethod.InParameters.SpawnInstance_();
oInParam.hDefKey = HKCU;
oInParam.sSubKeyName = sRegPath;
oOutParam = oReg.ExecMethod_(oMethod.Name, oInParam);
aNames = oOutParam.sNames.toArray();
//-------------------------------------------------------------
var WshShell = WScript.CreateObject("WScript.Shell");
s = "";
n = 0;
// Création des raccourcis
for (i = 0; i < aNames.length; i++)
{
aParts = aNames[i].split( "@" );
creerRaccourci( fic.ParentFolder.Path + "\\putty.exe", dest + "\\" + aParts[1] + " - " + aParts[0] + ".lnk", aNames[i] );
s = s + aParts[1] + " - " + aParts[0] + "\n";
n++;
}
WScript.Echo( s + "\n" + n + " Raccourcis créés dans : " + dest );
Installation / Utilisation
Créer un fichier C:\PuTTY\CreatePuttyShortCuts.jse.jse contenant le code çi-dessus.
Le chemin C:\PuTTY, n'est pas obligatoire, le script travail à partir de là où il se trouve.
Le script va lire la base de registre et créer un raccourci pour chaque connexion trouvée.
Les raccourcis sont créés dans un répertoire X, lui même situé au même emplacement que le script.
Si putty.exe est présent dans le même répertoire que le script .jse, les raccourcis auront l'icone de putty.
Si y'en a qui se pose, la question, c'est OUI, je me suis bien pris là tête !
Lucky
C'est très fort. Merci BEAUCOUP
Bonjour,
Tu peux peut-être contourner le problème en te créant un raccourci vers putty.exe et en ajoutant les parametres dans les propriétés de ce raccourci.
Ou bien en te créant un fichier batch (simple fichier texte avec E:\DownloadFirefox\putty.exe -ssh -P 22 admin@127.0.0.1 -pw pass dont le suffixe est .bat) qui lance putty.
Et faire pointer ton lien sur le raccourci ou le batch.
eric
Tu peux peut-être contourner le problème en te créant un raccourci vers putty.exe et en ajoutant les parametres dans les propriétés de ce raccourci.
Ou bien en te créant un fichier batch (simple fichier texte avec E:\DownloadFirefox\putty.exe -ssh -P 22 admin@127.0.0.1 -pw pass dont le suffixe est .bat) qui lance putty.
Et faire pointer ton lien sur le raccourci ou le batch.
eric
Merci pour ta réponse Eric,
Mais j'ai doit avoir environ 200 équipements à gérer quotidiennement et je cherche la simplicité pour m'y connecter.
Soit en arrivant à faire ce raccourci, soit en générant via macro le fichier configuration (.reg) de Putty (j'ai aussi posté un message pour ça mis sans succès)
Eric
Mais j'ai doit avoir environ 200 équipements à gérer quotidiennement et je cherche la simplicité pour m'y connecter.
Soit en arrivant à faire ce raccourci, soit en générant via macro le fichier configuration (.reg) de Putty (j'ai aussi posté un message pour ça mis sans succès)
Eric
Bonjour,
Le mieux alors est sans doute que tu te crées un fichier batch que tu modifies (ou supprime et récrée) parce que je ne suis pas sûr que passer des paramètres à un exécutable lancé via un lien soit possible.
Sur developpez.com tu trouveras toutes les façons de travailler sur un fichier texte.
ex: https://warin.developpez.com/access/fichiers/ qui est complet avec des exemples
eric
Le mieux alors est sans doute que tu te crées un fichier batch que tu modifies (ou supprime et récrée) parce que je ne suis pas sûr que passer des paramètres à un exécutable lancé via un lien soit possible.
Sur developpez.com tu trouveras toutes les façons de travailler sur un fichier texte.
ex: https://warin.developpez.com/access/fichiers/ qui est complet avec des exemples
eric
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question