Ajouter une option dans un raccourci

Signaler
Messages postés
6
Date d'inscription
jeudi 11 mars 2021
Statut
Membre
Dernière intervention
13 mars 2021
-
Messages postés
6
Date d'inscription
jeudi 11 mars 2021
Statut
Membre
Dernière intervention
13 mars 2021
-
Bonjour,

j'ai le raccourci gestion.lnk qui se trouve dans un dossier C:\EDF

Est-il possible de me modifier ce petit programme pour pouvoir ajouter l'option suivante:
d=\edf p=date

à la fin de la ligne cible du raccourci

iSet winScriptObj = WScript.CreateObject("WScript.Shell")
linkFile = "C:\bb\gestion.lnk"
Set link = winScriptObj.CreateShortcut(linkFile)"
link.Description = "Gestion"   
link.HotKey = "CTRL+ALT+N"
link.IconLocation = "C:\bb\logo.ico"
link.WindowStyle = "1"
link.WorkingDirectory = "C:\bb\memtools\start"
link.Save

Merci pour ton aide
HBY

6 réponses

Messages postés
7335
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
12 avril 2021
122
Messages postés
6
Date d'inscription
jeudi 11 mars 2021
Statut
Membre
Dernière intervention
13 mars 2021

Bonjour
Merci ta réponse rapide.
Je connais ce site, le problème, le module de ce site, m'oblige à taper la commande cible.
Mon but est de rajouter une option à la fin de ligne cible du raccourci existant sans toucher le contenu.
Cela me fait une semaine de recherche sans résultat.
Merci pour ton aide.
Messages postés
7335
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
12 avril 2021
122
le module de ce site, m'oblige à taper la commande cible.

Utilise une InputBox avec ta commande cible dans une variable

https://www.promotic.eu/en/pmdoc/ScriptLangs/VBScript/PropMeth/InputBox.htm

@+ Le Pivert
Messages postés
6
Date d'inscription
jeudi 11 mars 2021
Statut
Membre
Dernière intervention
13 mars 2021

Cela n'est pas pratique pour l'utilisateur.
je vais encore chercher mais, si tu as une autre idée, n'hésite pas pas à m'aider.
merci pour ta sympathie.
Messages postés
7335
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
12 avril 2021
122
Tu peux aussi utiliser une boite de dialogue pour avoir le chemin de la commande cible:

https://www.robvanderwoude.com/vbstech_ui_fileopen.php

@+ Le Pivert
Messages postés
7335
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
12 avril 2021
122 >
Messages postés
7335
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
12 avril 2021

voilà un exemple pour faire un raccourci sur le Bureau d'un fichier que tu auras préalablement choisi:

Dim Shell,  Chemin, linkFile, link, nom
sIniDir = "C:\Windows\*" 
sFilter = "All files (*.*)|*.*|Microsoft Word (*.doc;*.docx)|*.doc;*.docx|Adobe pdf (*.pdf)|*.pdf|Image files (*.gif;*.png;*jpg;*.bmp)|*.gif;*.png;*jpg;*.bmp|Html files (*.htm;*.html;*.mht)|*.htm;*.html;*.mht|" 
sTitle = "Choisissez votre fichier" 
rep = GetFileDlgEx(Replace(sIniDir,"\","\\"),sFilter,sTitle) 
Chemin=rep 
nom=Mid(Chemin, InStrRev(Chemin, "\") + 1, Len(chemin))
Function GetFileDlgEx(sIniDir,sFilter,sTitle) 
  Set oDlg = CreateObject("WScript.Shell").Exec("mshta.exe ""about:<object id=d classid=clsid:3050f4e1-98b5-11cf-bb82-00aa00bdce0b></object><script>moveTo(0,-9999);eval(new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(0).Read("&Len(sIniDir)+Len(sFilter)+Len(sTitle)+41&"));function window.onload(){var p=/[^\0]*/;new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(p.exec(d.object.openfiledlg(iniDir,null,filter,title)));close();}</script><hta:application showintaskbar=no />""") 
  oDlg.StdIn.Write "var iniDir='" & sIniDir & "';var filter='" & sFilter & "';var title='" & sTitle & "';" 
  GetFileDlgEx = oDlg.StdOut.ReadAll 
End Function
''// Création de l'objet Shell qui va nous permettre de créer le fichier .lnk
Set Shell = WScript.CreateObject("WScript.Shell")
''// Le chemin du fichier .lnk
linkFile = Shell.SpecialFolders("Desktop")& "\" & nom & ".lnk"
''// Création du raccourci
Set link = Shell.CreateShortcut(linkFile)
''// Propriétés du raccourci
link.TargetPath = Chemin
''// Sauve le raccourci
link.Save


@+ Le Pivert
Messages postés
6
Date d'inscription
jeudi 11 mars 2021
Statut
Membre
Dernière intervention
13 mars 2021

Bonjour,
je crois que je me suis mal exprimer pour expliquer mon problème.

j'ai un raccourci modèle qui a pour nom: Gestion.lnk
Cible: C:\MEMTOOLS\START\MOD2000.EXE /§§-50;32
Démarrer dans: C:\MEMTOOLS\start

Je voudrais copier gestion.lnk dans GC.lnk et rajouter à ce dernier raccourci dans la ligne cible l'option suivante:
d=c:\edf p=date

je me suis inspiré du VBS de Ronan le Fichant pour le faire, ça marche bien mais
je ne veux pas taper la ligne link.TargetPath

Pourrais-tu, si c'est possible, d'apporter le correctif à la ligne surlignée ci-dessous..

Set winScriptObj = WScript.CreateObject("WScript.Shell")
linkFile = "C:\edf\GC.lnk"
Set link = winScriptObj.CreateShortcut(linkFile)
link.TargetPath = "C:\memtools\start\mod2000.exe /§§-50;32"
link.Arguments = " d=c:\edf p=date"
link.Description = "Gestion"
link.HotKey = "CTRL+ALT+N"
link.IconLocation = "C:\Memtools\start\mod2000.exe" ''
link.WindowStyle = "1"
link.WorkingDirectory = "C:\memtools\start"
link.Save

Merci pour ton qui me serait vraiment utile.
Messages postés
7335
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
12 avril 2021
122
C'est dans
link.TargetPath
que tu dois mettre le chemin de l'exe à ouvrir avec le raccourci et non

dans
link.IconLocation
comme tu l'as fait!

 link.TargetPath =  "C:\Memtools\start\mod2000.exe"


Je ne comprends toujours pas ce que tu veux faire avec la date et ton autre chemin.
Explique clairement le but de la manoeuvre, on pourra trouver une autre solution.

@+ Le Pivert
Messages postés
6
Date d'inscription
jeudi 11 mars 2021
Statut
Membre
Dernière intervention
13 mars 2021

Bonjour
Merci pour ta réponse.
j'explique:

j'ai un raccourci qui s'appelle: Gestion.lnk
voici ses propriétés:
Type de cible : Application
Emplacement: start
Cible: c:\memtools\start\mod2000.exe /§§-50;32
Démarrer dans: c:\memtools\start
Touche de raccourci: Agrandie
Commentaire: Raccourci modèle

Le but est de transmettre les propriétés de Gestion.lnk vers Gc.lnk
et de rajouter à sa ligne cible l'option suivante: D=c:\edf p=date

on obtient:

Type de cible : Application
Emplacement: start
Cible: c:\memtools\start\mod2000.exe /§§-52;30 d=c:\edf p=date
Démarrer dans: c:\memtools\start
Touche de raccourci: Agrandie
Commentaire:

mon Script fonctionne bien mais le caractère § n'est pas reconnu par certains pc et se transforme en un autre caractère et l'exécution n'est plus possible.

alors y'a t-il un moyen de lire le raccourci Gestion.lnk, de mémoriser dans une variable le contenu de sa ligne cible ensuite transmettre cette variable à la ligne cible de Gc.lnk

J'espère que suis clair maintenant:
Merci de ta patience et de vouloir m'aider
HBY
Messages postés
7335
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
12 avril 2021
122
Lis bien le 1er lien donné pour créer un raccourci . En dehors de cela je ne peux t'aider plus, si tu ne suis pas les conseils donné sur ce site.

http://blog.ronanlefichant.fr/2020/05/create-shortcut-vbscript.html

Bon courage
Messages postés
6
Date d'inscription
jeudi 11 mars 2021
Statut
Membre
Dernière intervention
13 mars 2021

On ne se comprend pas, Merci pour ton aide.