2017-09-13 210 views
-2

我有一个批处理文件,其目的是从网络位置复制一个目录,并将其放置在用户系统的C:位置, t已经存在。问题是当主用户尝试这个时,显示上面的消息并且应用程序随后出错。但是,当我在我的机器上运行时,尝试和调试,它的工作方式应该没有问题。仅限某些用户:不支持UNC路径默认为windows目录

我在这里看到很多东西,但没有看到它在哪里工作,这取决于用户。另外,大多数只关于网络驱动器而不是当地人。

这是代码。我不是这个.bat的作者,所以让我知道是否有什么东西看起来不正确。

@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 

我使用POPD和pushd将在各个景点试过,但我不知道在哪里,我会把那些,或者即使它是适用于这种情况。

+0

他们正在从UNC路径运行该程序,这就是您遇到此错误的原因。 – Squashman

+0

为什么我能够在没有错误的情况下从相同的路径运行?我将它们并排运行,无论是来自同一地点,而是在不同的机器上。 – gfuller16

+0

当*确切*此消息出现? (您可能需要从批处理文件中删除“@echo off”行以查看它正在执行的操作。) –

回答

0

把这一行二号线(后关闭@echo右)

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

https://ss64.com/nt/pushd.html 注意,“以管理员身份运行”改变当前目录...这将会把它回到它是哪里。

相关问题