2017-09-13 6 views
-2

J'ai un fichier batch, dont le but est de copier un répertoire depuis un emplacement réseau et de le placer dans l'emplacement C: du système de l'utilisateur s'il ne le fait pas t existe déjà. Le problème est lorsque l'utilisateur principal tente cela, le message ci-dessus est affiché et l'application par la suite des erreurs. MAIS, quand je cours sur ma machine, pour essayer de déboguer, ça fonctionne comme il se doit sans problème.Uniquement avec certains utilisateurs: Les chemins UNC ne sont pas supportés Par défaut vers le répertoire windows

J'ai vu beaucoup de choses là-dessus, mais aucune où cela fonctionne selon l'utilisateur. En outre, la plupart fonctionnent uniquement avec des lecteurs réseau et non locaux.

Voici le code. Je ne suis pas l'auteur de ce .bat alors laissez-moi savoir si quelque chose ne semble pas tout à fait raison.

@echo off 
echo Starting Application... 
rem copy files over to the users local computer to prevent .dll problems when running App 
C: 
CD \ 
if not exist "C:\App" mkdir c:\App 
CD App 
robocopy "\\server\shared\fuller\Apps\ThisApp" c:\App /S robocopy.log 
echo You may close this window or it will close by itself when the program is done. 
ThisApp1.exe 

J'ai essayé d'utiliser popd et pushd dans différents endroits, mais je ne sais pas où je mettrais ceux-ci, ou même si elle est applicable à cette situation.

+0

Ils exécutent le programme à partir d'un chemin UNC, ce qui explique pourquoi vous obtenez cette erreur. – Squashman

+0

Pourquoi serais-je capable de courir depuis le même chemin sans erreur? Je les ai couru côte à côte, tous deux du même endroit mais sur des machines différentes. – gfuller16

+0

Lorsque * exactement * ce message apparaît-il? (Vous devrez peut-être supprimer la ligne '@echo off' du fichier batch pour voir ce qu'il fait.) –

Répondre

0

Mettez cette ligne comme la 2ème ligne (à droite après @echo off)

pushd %~dp0 & REM needed in case 'Run as Administrator' or executed from network drive 

https://ss64.com/nt/pushd.html Notez que « Exécuter en tant qu'administrateur » change le répertoire courant ... ce sera le remettre à l'endroit où il était .