Pra*_*eth 9 .net c# windows asp.net batch-file
我有一个共享路径(比如// servername/c $/batches /),我的所有批处理文件都在这里,我正在用C#编写一个Web应用程序来运行该应用程序的.bat文件.当我有物理路径时,我知道这样做的方法.但在这里,我没有物理路径.有可能做到这一点.
编辑#1
我只需双击它们就可以执行我的bat文件,或者在物理服务器上打开cmd程序,然后导航到驱动器并执行bat文件.
编辑#2
当我放入UNC路径时,得到以下错误
我收到错误myprogram.exe未被识别为内部或外部命令可操作程序或批处理文件.9009
Mar*_*c B 14
批处理文件不支持UNC路径作为其"当前目录".这样做有一个糟糕的工作:
pushd "%~dp0"
your batch stuff
popd
Run Code Online (Sandbox Code Playgroud)
%~dp0扩展为当前(d)rive /(p)ath /(0)批处理文件名
例:
好.简单的批处理文件:
pushd %~dp0
echo "Hello from batch land"
echo %~dp0
popd
Run Code Online (Sandbox Code Playgroud)
将它放在某个服务器上,并尝试通过unc路径运行它:
C:\> \\server\share\test.bat
Run Code Online (Sandbox Code Playgroud)
你会得到输出:
C:\>pushd \\server\share\
Z:\>echo Hello from batch land
Hello from batch land
Z:\>echo \\server\share\
\\server\share\
Z:\>popd
C:\>
Run Code Online (Sandbox Code Playgroud)
很奇怪,但它确实有效.
| 归档时间: |
|
| 查看次数: |
16833 次 |
| 最近记录: |