Suppression du fichier desktop.htt par VBS - VB/VBA/VBS - Programmation
Marsh Posté le 30-06-2010 à 09:45:24
Hello
Sous le coude, non rien
Il te faut definir le %USERPROFILE%
Si tu mets ca dans une chaine, bah... ca renvoit %USERPROFILE%
Toto="12+3" bah ca renvoit 12+3
Toto = 12+3 ca renvoit 15
Ensuite le code... Repeter 15 fois le chemin a ton fichier... C'est pas fait pour les chats les variables hein
Pis euh attrib juste pour tester si un fichier existe, c'est un peu comme se raser les poils pubiens a la tronçonneuse
Aller, un petit coup de main, meme si en googlant ca se trouve en 2sc1/2
Code :
|
Marsh Posté le 30-06-2010 à 11:03:46
Super merci beaucoup!
Pour les variables mon collègue m'a dit que je devais passer par la mais ne connaissant rien à la prog ca ne me disait rien du tout.
La je comprend mieux.
Dim les enonce et on les qualifie après si j'ai bien suivi.
ExpandEnvironmentStrings je ne connaissais pas mais c'est chose faite merci
Pour attrib ce n'etait pas pour vérifier que le fichier existe mais plus pour lui retirer ses attributs (h et s) qui je pensais empechaient la suppression du fichier.
Mais finalement c'est le %userprofile% non définit qui posait problème.
En revanche la partie en dessous de Else, je ne saisis pas tout.
Pourquoi créer un fichier text et ensuite le supprimer (si c'est bien ce que fait le script) ?
Simplement faire la ligne 18 ne suffit-il pas?
enfin les lignes 24 25 et 26 me laisse perplexe. Est ce pour libérer la mémoire utiliser par les routines ou est ce pour autre chose?
En tout ca merci pour ce coup de main
j'ai encore à bucher le vbs je suis loin de pouvoir faire ce que je veux avec..
Marsh Posté le 30-06-2010 à 11:43:19
Ethor a écrit : |
Marsh Posté le 28-06-2010 à 14:57:55
Bonjour tout le monde,
Je suis completement nouveau sur ce forum mais je le connais de réputation, je vais donc essayer d'expliquer au mieux mon problème.
Je vous expose mon problème :
j'ai en charge des postes dans un domaine dans lequel des GPO s'appliquent sur les postes des utilisateurs les empechant de faire certaines opérations de modif du systeme.
Exemple : changer le fond d'ecran.
(Notre département ne dispose des autorisations pour modifier les GPO)
Il arrive que l'active desktop plante et pour le reinitialiser je peux entre autre supprimer/renommer le fichier desktop.htt qui se trouve dans %USERPROFILE%\Application Data\Microsoft\Internet Explorer\Desktop.htt
Je cherche au travers de VBS(dont je ne connaissais rien il y a deux semaines..) à lui retirer ses attributs cachés et systeme pour ensuite le supprimer.
Voici le code que j'ai constitué à partir de "sesame script" du site de Microsoft :
Set WSHShell = WScript.CreateObject("WScript.Shell" )
set objFSO = createobject("scripting.filesystemobject" )
set objfile = objfso.getfile("%USERPROFILE%\Application Data\Microsoft\Internet Explorer\Desktop.htt" )
if objfso.fileexists("%USERPROFILE%\Application Data\Microsoft\Internet Explorer\Desktop.htt" ) Then
objFSO.DeleteFile("%USERPROFILE%\Application Data\Microsoft\Internet Explorer\Desktop.htt" )
wscript.echo "Le fichier existe et a été supprimé"
else
wscript.echo " le fichier n'existe pas"
WSHShell.Run "attrib.exe -s -h %USERPROFILE%\Application Data\Microsoft\Internet Explorer\Destkop.htt"
objFSO.DeleteFile("%USERPROFILE%\Application Data\Microsoft\Internet Explorer\Desktop.htt" )
end if
Mes problèmes sont les suivants :
dans un terminal, attrib.exe -s -h %USERPROFILE%\Application Data\Microsoft\Internet Explorer\Destkop.htt me rend bien le fichier détectable et donc supprimable.
Mais au travers du script cela ne fonctionne pas.
Ne sachant pas si mon script est correct ou non, ais-je fait une erreur ?
je precise que ce script doit pouvoir s'adapter à n'importe quelle machine du parc d'ou l'utilisation (peut etre a tord) de %USERPROFILE% pour cibler le répertoire personnel de chaque utilisateur.
Merci d'avance pour vos réponses/conseils éventuels.