Tester la présence d'un raccourci sur le bureau

Tester la présence d'un raccourci sur le bureau - VB/VBA/VBS - Programmation

Marsh Posté le 05-03-2013 à 11:57:39    

Bonjour,  
 
J'ai crée un script testant la présence d'un raccourci sur le bureau et si c'est le cas il le supprime.
 
Le problème est que le raccourci n'a pas tout le temps le même nom, il n'y a que quelques lettres qui reviennent.
Donc j'ai mit une * mais cela ne fonctionne pas.
 
Par contre si je n'utilise pas le FileExists et que j’exécute directement le DeleteFile, cela fonctionne.
 
Auriez-vous une idée du pourquoi ?
 

Code :
  1. Sub SupprRacc
  2. 'Déclaration des variables
  3. Dim Shell, DesktopPath, objFSO
  4. 'Création des variables
  5. Set Shell = CreateObject("WScript.Shell" )
  6. DesktopPath = Shell.SpecialFolders("Desktop" )
  7. Set objFSO = CreateObject("Scripting.FileSystemObject" )
  8. 'Supression du raccourci
  9. If objFSO.FileExists(DesktopPath & "\ass*.lnk" ) Then
  10. MsgBox "Ca marche !"
  11. objFSO.DeleteFile DesktopPath & "\ass*.lnk"
  12. End If
  13. REM If objFSO.FileExists(DesktopPath & "\nav*.lnk" ) Then
  14. REM objFSO.DeleteFile DesktopPath & "\nav*.lnk"
  15. REM End If
  16. End Sub

Reply

Marsh Posté le 05-03-2013 à 11:57:39   

Reply

Marsh Posté le 05-03-2013 à 14:21:21    

 
           Bonjour,  comme indiqué dans la documentation, FileExists vérifie l'existence d'un fichier, ne supporte donc pas les caractères génériques ‼
 

Reply

Marsh Posté le 05-03-2013 à 16:01:12    

Merci, c'est logique ^^.

 

Je vais mettre un "On error Resume Next" comme ça j’aurai pas de message d'erreur.


Message édité par Eysinem le 05-03-2013 à 16:01:26
Reply

Marsh Posté le 21-08-2013 à 17:02:14    

Bonjour,
 
Depuis peu, j'ai en charge une partie de l'administration système, type Ad 2008 R2, dans un hôpital.
Nouveau sur hardware, je suis à la recherche d'un script pour tester l'existence d'un répertoire, nommé dans mon cas "extensions" caché ci-dessous :  
Chemin :  
\\nom du user1\AppData\Roaming\Mozilla\Firefox\Profiles\fcjul3cx.Infirmier1\extensions ET encore
\\nom du user2\AppData\Roaming\Mozilla\Firefox\Profiles\ybnssfwk.Infirmier2\extensions
...
150 users et 5 profiles à chaque fois...  
 
L'objectif est ensuite de copier un fichier *.xpi à chaque fois que ce nom de répertoire est trouvé.
L'objectif 2 serait de faire un erase du contenu avant de copier le NOUVEAU fichier *.xpi
 
En vous remerciant encore une fois pour les ressources que vous mettez à disposition.
 
Stéphane
 
 

Eysinem a écrit :

Bonjour,  
 
J'ai crée un script testant la présence d'un raccourci sur le bureau et si c'est le cas il le supprime.
 
Le problème est que le raccourci n'a pas tout le temps le même nom, il n'y a que quelques lettres qui reviennent.
Donc j'ai mit une * mais cela ne fonctionne pas.
 
Par contre si je n'utilise pas le FileExists et que j’exécute directement le DeleteFile, cela fonctionne.
 
Auriez-vous une idée du pourquoi ?
 

Code :
  1. Sub SupprRacc
  2. 'Déclaration des variables
  3. Dim Shell, DesktopPath, objFSO
  4. 'Création des variables
  5. Set Shell = CreateObject("WScript.Shell" )
  6. DesktopPath = Shell.SpecialFolders("Desktop" )
  7. Set objFSO = CreateObject("Scripting.FileSystemObject" )
  8. 'Supression du raccourci
  9. If objFSO.FileExists(DesktopPath & "\ass*.lnk" ) Then
  10. MsgBox "Ca marche !"
  11. objFSO.DeleteFile DesktopPath & "\ass*.lnk"
  12. End If
  13. REM If objFSO.FileExists(DesktopPath & "\nav*.lnk" ) Then
  14. REM objFSO.DeleteFile DesktopPath & "\nav*.lnk"
  15. REM End If
  16. End Sub


Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed