Lorsque vous obtenez un code-filage, comment devez-je rendre compte des différents profils utilisateur? Par exemple, ci-dessous, j'utilise l'utilisateur de répertoire.creatrederectory pour créer une série de dossiers / sous-dossiers, l'utilisateur procédera à déplacer des fichiers à: Cependant, "nom d'utilisateur" sera une variable selon à l'utilisateur utilisant l'outil. p> p>
3 Réponses :
Au lieu de la codage rigide, vous pouvez le construire de manière dynamique avec getenvironmentvariable () code>. Vous devriez concaténer la valeur
HomeDrive code> et le
homepath code>, puis ajoutez des sous-dossiers après cela. P>
environnement.getenvironmentvariable ("HomeDrive") + Environnement.getenvironmentVariable ("HomePath") Code> P>
Une chose importante à comprendre est que les utilisateurs peuvent La plupart de ces dossiers peuvent être facilement utilisés avec malheureusement, il n'y a pas Ce n'est vraiment pas que beaucoup em> code, et ça fait la Coller les nouvelles méthodes de votre classe existante, ajoutez un système c: \ utilisateurs \ nom d'utilisateur \ téléchargements code> est correct. Sur mon propre système, par exemple, j'ai un SSD petit et un disque dur traditionnel beaucoup plus grand. Je préfère mes téléchargements pour finir sur le disque dur, bien loin du reste de mon profil.
Environnement.GetFolderDePath () Code>
Méthode. Par exemple, le dossier de documents est ici: p> Specialfolder code> Enum
Valeur pour le dossier code> code>. Nous devons travailler un peu plus fort. Je préfère ce Solution de code de code : p> importateurs.Runtime.Interopservices code> en haut du fichier et vous pouvez mettre à jour le code dans la question comme ceci: P>
Private Sub btnCreateFolders_Click(sender As Object, e As EventArgs) Handles btnCreateFolders.Click
Dim SubTest As String = Path.Combine(GetDownloadsFolder(), "TEST\SUB TEST")
Directory.CreateDirectory(SubTest)
End Sub
Merci tout ce qui a répondu et commenté - J'ai rapidement abandonné l'idée d'utiliser le dossier de téléchargements sous-factigeant la difficulté accrue. Pour l'instant, j'identifie simplement le bureau de l'utilisateur, mais entre tout partagé, je suis arrivé à (dossiers 1, etc., comme des espaces réservés temporaires de Temps pour l'instant): https://docs.microsoft.com/en-us/dotnet/api/system.io.path.combine?view=netframework-4.8 a> p> p>
Vous n'avez pas besoin d'échapper aux backslashes - c'est une chose C #. C'est-à-dire, utilisez \, pas \\.
Utilisez chemin path.combine (dir, "dossier 1", "dossier 2", "dossier 3", "dossier 4") code>. Le but entier de
path.combine code> est de supprimer l'échappement ou les dépendances sur les séparateurs de chemins.
Voir le Environnement.Specialfolder Enumerator. Le dossier
Téléchargements CODE> SPÉCIAL i> n'est cependant pas parmi ceux-ci. Si vous avez besoin spécifiquement de ce chemin de répertoire, vous pourrait i> lire le chemin fourni par
environnement.Specialfolder.userprofile va partir de là, mais vous avez probablement besoin de quelque chose comme ça . Ou le lire dans le registre (voir les autres réponses).
Je suppose qu'il veut un nouveau dossier dans
environnement.specialfolder.mydocuments code>;
Téléchargements Code> est un endroit assez particulier pour mettre des dossiers "L'utilisateur procédera à déplacer des fichiers à".