recup user name pr copier un fichier sur le bureau [vbs] - VB/VBA/VBS - Programmation
Marsh Posté le 11-07-2015 à 11:59:50
Normal... tu places en cible "C:\Users\strSessionName\Desktop" donc pour un hypothétique utilisateur "strSessionName"...
' copie du raccourcis de la page d’accueil sur le bureau : |
Par contre avec ce code tu ne copies pas un raccourcis, tu copies l'intégralité d'un dossier.
Il vaudrait mieux créer un raccourci sur le bureau :
Set Shell = CreateObject("WScript.Shell" ) |
Tu modifies les variables :
oShellLink.TargetPath -> cible de ton lien
oShellLink.WorkingDirectory -> répertoire de travail
Tu peux même personnalisé l'icônes et le descriptif du raccourci en mettant avant oShellLink.Save :
oShellLink.IconLocation = "C:\chemin_vers\icone.exe_ou.dll, 0"
oShellLink.Description = "Description du raccourci"
L'option la plus simple après n'est pas de créer l'icône sur le profil de l'utilisateur, mais dans celui de tous les utilisateurs
Marsh Posté le 13-07-2015 à 14:33:34
Merci de votre aide !
Je n'arrive pas à faire fonctionner vos 2 codes
J'ai bien d'autres codes qui fonctionnent c'est à priori pas le PC.
Je veux bien votre 3 ème solution pour copier le raccourci sous chaque session d'utilisateur
Voilà comment je l'ai modifié avec les chemins d'accès des fois que j'ai fais des erreurs
(j’ais aussi testé des variantes sans succès) :
' copie du raccourci sur le bureau : |
Merci d'avance
Marsh Posté le 16-07-2015 à 15:33:35
Ah oui tiens, étonnant ce léger bug avec la variable d'environnement %SESSIONNAME% chez moi aussi, ça renvoie "console" au lieu de mon user
Donc version corrigée (testé sous Vista Pro 32bits et Windows 7 Pro 32 et 64bits) :
|
Marsh Posté le 28-07-2015 à 23:55:14
Ça fonctionne super bien ! Merci pour tout, les détails sont parfaits !
Marsh Posté le 10-07-2015 à 17:12:49
Bonjour,
Je dois copier un fichier depuis une clef usb sur le bureau de plusieurs PC dont je ne connais pas les noms de session.
Apparemment mon code ne fonctionne pas, il n'arrive pas soit à récupérer le nom de session soit ça veut pas utiliser la variable du nom de session lorsqu'elle est placée dans un chemin d'accès lors de l'utilisation d'une autre fonction.
' copie du raccourcis de la page d’accueil sur le bureau :
Dim sOriginFolder, sDestinationFolder, sFile, oFSO, strSessionName
Set wshShell = WScript.CreateObject("WScript.Shell" )
strSessionName = WshShell.ExpandEnvironmentStrings("%SESSIONNAME%" )
Set oFSO = CreateObject("Scripting.FileSystemObject" )
sOriginFolder = "C:\Users\Utilisateur\Downloads\Videos\in\home_shortcut" ' copie le raccourcis du dossier home_shortcut
sDestinationFolder = "C:\Users\strSessionName\Desktop" ' colle le raccourcis dans le dossier bureau
For Each sFile In oFSO.GetFolder(sOriginFolder).Files
If Not oFSO.FileExists(sDestinationFolder & "\" & oFSO.GetFileName(sFile)) Then
oFSO.GetFile(sFile).Copy sDestinationFolder & "\" & oFSO.GetFileName(sFile),True
'popup copie réalisée: WScript.Echo "Copying : " & Chr(34) & oFSO.GetFileName(sFile) & Chr(34) & " to " & sDestinationFolder
End If
Next
Merci d'avance pour votre aide