Se : erreur de compilation Microsoft VBScript: Attendu")'
Je suis nouveau sur le vb script et que vous voulez créer un raccourci pour mon .exe de l'application qui va ouvrir dans une fenêtre invisible. Voici le code que j'ai écrit
Option Explicit
Private Sub Command1_Click()
'This will Create a ShortCut of test_application in our desktop, its name is "My-Test", invisible windows when run, use the 2nd icon as the Shortcut icon.'
Create_ShortCut "C:\MyApp\bin\test_application.exe", "Desktop", "My-Test", , 0, 1
End Sub
Sub Create_ShortCut(ByVal TargetPath As String, ByVal ShortCutPath As String, ByVal ShortCutname As String, Optional ByVal WorkPath As String, Optional ByVal Window_Style As Integer, Optional ByVal IconNum As Integer)
Dim VbsObj As Object
Set VbsObj = CreateObject("WScript.Shell")
Dim MyShortcut As Object
ShortCutPath = VbsObj.SpecialFolders(ShortCutPath)
Set MyShortcut = VbsObj.CreateShortcut(ShortCutPath & "\" & ShortCutname & ".lnk")
MyShortcut.TargetPath = TargetPath
MyShortcut.WorkingDirectory = WorkPath
MyShortcut.WindowStyle = Window_Style
MyShortcut.IconLocation = TargetPath & "," & IconNum
MyShortcut.Save
End Sub
Je suis stocké le script de test.vbs et exécutée de la façon suivante
C:\Users\me\Desktop>cscript test.vbs
et me donne l'erreur suivante
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
C:\Users\me\Desktop\test.vbs(9, 38) Microsoft VBScript compilation error: Expected ')'
Est-ce un bon moyen de créer un raccourci ou est-il mieux et plus verbeux pour le faire ?
Vous devez vous connecter pour publier un commentaire.
Il y a quelques problèmes avec votre script.
En réponse à votre question, la raison pour laquelle vous recevez une erreur est parce que VBScript ne supporte qu'un seul type de données Variant. Dans votre fonction "Create_Shortcut", vous définissez vos paramètres en tant que particulier, types de données, tels que "en tant Que Chaîne et "Entier". Supprimer les données de déclarations de type, et vous l'avez résolu votre problème - sorte de.
Le problème suivant est que VBScript ne prend pas en charge les paramètres facultatifs. Donc, vous devez supprimer le mot-clé Facultatif dans votre "Create_Shortcut" signature de la méthode aussi. En fin de compte, la signature de la méthode ressemble à ceci:
Une autre préoccupation que j'ai à propos de ce script est qu'on dirait que c'est de la manipulation d'un bouton de la souris (Private Sub Command1_Click); si c'est un Script VB et pas un VB 6 application, vous n'avez pas besoin du bouton gestionnaire de clic. Vous n'avez, cependant, besoin d'appeler votre fonction, donc si vous retirez la signature pour le clic du bouton ainsi que de la fermeture "End Sub", que vous appelez votre fonction correctement. Cependant....
Le code dans votre "Create_Shortcut" la méthode a un problème aussi. Tout comme dans la description ci-dessus, il n'existe qu'un seul type de données Variant - donc, supprimer le "Objet" de la deux lignes la déclaration des variables.
La fonction ne fonctionne toujours pas, mais ce dernier problème, parce que vous êtes de passage dans un travail vide chemin d'accès au répertoire lors de l'appel de la méthode; le répertoire de travail est requis, juste être sûr de le passer à votre méthode. Changer votre code à partir de:
à
Donc, en fin de compte, votre fichier VBS ressemblera à ceci: