web-dev-qa-db-fra.com

Fichier BAT à mapper sur un lecteur réseau sans s'exécuter en tant qu'administrateur

J'essaie de créer un fichier .bat qui mappera sur un lecteur réseau lorsque l'utilisateur cliquera dessus (ce serait encore mieux s'il pouvait se connecter automatiquement à la connexion s'il était connecté au réseau, sinon ne le connectez pas)

Ce que j'ai jusqu'ici c'est:

Net Use P: "\\server\foldername\foldername"

Est-il possible de créer cela pour que les utilisateurs n'aient pas à cliquer avec le bouton droit de la souris et à s'exécuter en tant qu'administrateur? J'aimerais bien qu'ils puissent simplement cliquer sur le fichier .bat et le mapper pour eux.

9
Bhetzie

Je viens de le comprendre! Ce que j'ai fait, c'est que j'ai créé le fichier de commandes comme je l'avais à l'origine:

Net Use P: "\\server\foldername\foldername"

Je l'ai ensuite sauvegardé sur le bureau, puis j'ai cliqué avec le bouton droit sur les propriétés et vérifié d'exécuter en tant qu'administrateur. J'ai ensuite copié le fichier dans C:\Users\"TheUser"\AppData\Roaming\Microsoft\Windows\Menu Démarrer\Programmes\Démarrage

Où "TheUser" était l'utilisateur souhaité auquel je voulais l'ajouter.

5
Bhetzie

Enregistrez ci-dessous dans un test.bat et cela fonctionnera pour vous:

@echo off

Net Use Z: \\server\SharedFolderName password /user:domain\Username /persistent:yes

/persistent:yes flag indiquera à l'ordinateur de reconnecter automatiquement ce partage lors de la connexion. Sinon, vous devez réexécuter le script à chaque démarrage pour mapper le lecteur.

Par exemple:

Net Use Z: \\WindowsServer123\g$ P@ssw0rd /user:Mynetdomain\Sysadmin /persistent:yes
20
Sunny
@echo off
Net Use z: /delete
cmdkey /add:servername /user:userserver /pass:userstrongpass

Net Use z: \\servername\userserver /savecred /persistent:yes
set SCRIPT="%TEMP%\%RANDOM%-%RANDOM%-%RANDOM%-%RANDOM%.vbs"

echo Set oWS = WScript.CreateObject("WScript.Shell") >> %SCRIPT%
echo sLinkFile = "%USERPROFILE%\Desktop\userserver_in_server.lnk" >> %SCRIPT%
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> %SCRIPT%
echo oLink.TargetPath = "Z:\" >> %SCRIPT%
echo oLink.Save >> %SCRIPT%

cscript /nologo %SCRIPT%
del %SCRIPT%
1
Henry

J'ai essayé de créer un pilote réseau mappé via 'Net Use' avec des privilèges d'administrateur mais j'ai échoué, cela ne s'affiche pas. Et si je l’ajoute via l’interface utilisateur, il disparaît après le redémarrage, c’est ce que j’ai fait avec powershell . Je pense donc que vous pouvez exécuter des scripts powershell à partir d’un fichier .bat, et le script est:

New-PSDrive -Name "P" -PSProvider "FileSystem" -Root "\\Server01\Public"

ajoutez -persist à la fin, vous créerez un lecteur réseau mappé persistant

New-PSDrive -Name "P" -PSProvider "FileSystem" -Root "\\Server01\Scripts" -Persist

pour plus de détails, voir New-PSDrive - Microsoft Docs

0
guanyuan he