Script pour rnomer un fichier dans l'exolorateur en majuscules

cs_rober Messages postés 86 Date d'inscription vendredi 29 novembre 2002 Statut Membre Dernière intervention 21 septembre 2010 - 2 avril 2009 à 19:47
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 - 3 avril 2009 à 16:48
Bonjour,
Je souhaiterais pouvoir executer un script à partir de l'explorateur windows (XP) qui me permetrait de renomer certain type de fichiers (*.dxf et *.pdf)  sans changer de nom mais en le passant en majuscules.
Si quelqu'un pouvait me donner une voie ça serait avec un grand merci.
Roger

4 réponses

cs_ghuysmans99 Messages postés 3982 Date d'inscription jeudi 14 juillet 2005 Statut Membre Dernière intervention 30 juin 2013 16
2 avril 2009 à 22:07
Si j'ai bien compris, tu veux ajouter au menu une option "Renommer en majuscules" ?
Dans ce cas, il faut regarder du côté des ShellExtensions ...
0
cs_rober Messages postés 86 Date d'inscription vendredi 29 novembre 2002 Statut Membre Dernière intervention 21 septembre 2010
2 avril 2009 à 22:19
Rober
peux tu etre un peu plus explicite car mes connaissances sont limitées
Merci
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
3 avril 2009 à 15:57
 Bonjour,

Exemple avec un CommonDialog:

Dim oUA, WshShell, MyPath, MyFile, objFso
Set oUA = CreateObject("UserAccounts.CommonDialog")
Set WshShell=CreateObject("WScript.Shell")
MyPath = oUA.ShowOpen
MyFile = oUA.FileName

Set objFso = CreateObject("Scripting.FileSystemObject")
Set objFile = objFso.GetFile(MyFile)

MsgBox MyFile & vbCr & objFso.GetParentFolderName(MyFile) & "" & _
       UCase(objFso.GetBaseName(MyFile)) & "." & objFso.GetExtensionName(MyFile)

objFso.MoveFile MyFile, objFso.GetParentFolderName(MyFile) & "" & _
       UCase(objFso.GetBaseName(MyFile)) & "." & objFso.GetExtensionName(MyFile)

jean-marc
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
3 avril 2009 à 16:48
Bonjour,

Avec explications.
La méthode MoveFile ([ object].MoveFile ([ source], [ destination]) permet de renommer un fichier.
Attention: Si destination est un fichier existant, une erreur se produit.
Il faut donc ajouter un test de non existence du fichier.

MyFile = "d:\TesT\TesT.xls"
Set objFso = CreateObject("Scripting.FileSystemObject")

objFso.MoveFile MyFile, _
       objFso.GetParentFolderName(MyFile) & "" & _
       UCase(objFso.GetBaseName(MyFile)) & "." & _
       objFso.GetExtensionName(MyFile)
'
'
'MoveFile : Déplace un ou plusieurs fichiers d'un emplacement à un autre
'
'GetParentFolderName : Renvoie une chaîne contenant le nom
'                      du dossier parent du dernier composant
'                      d'un chemin spécifié
'
'UCase : Renvoie une chaîne qui a été convertie en majuscules
'
'GetBaseName : Renvoie une chaîne contenant le nom de base du
'              dernier composant d'un chemin d'accès, sans extension de fichier

'
'GetExtensionName : Renvoie une chaîne contenant le nom
'                                d'extension du dernier composant d'un chemin d'accès
'

jean-marc
0
Rejoignez-nous