如何从wcf执行批处理文件 [英] How to execute a batch file from wcf
问题描述
大家好,
我正在使用wcf服务中的批处理文件,批处理文件正常执行,没有任何异常或错误,但实际操作没有完成(将文件从一个位置移动到另一个位置。
这是我在wcf服务中的代码。
Hello everyone,
I am working with a batch file in wcf service, batch file is executing properly without any exception or error but actual operation is not done ( moving files from one location to another).
This is my code in wcf service.
public void Downloading()
{
try
{
System.Diagnostics.Process.Start("cmd.exe", "/c" + "CapOne.bat");
}
catch (Exception ex)
{
}
}
推荐答案
首先,不要使用CMD.EXE。它可以工作,但完全没有意义,纯粹多余的东西。请使用
First of all, don''t use "CMD.EXE". It can work, but makes no sense at all, pure redundant thing. Please use
System.Diagnostics.Process.Start("CapOne.bat");
这样就不会让你的代码正常工作。可能还有其他一些问题。为什么你认为找到这个文件?如果调用代码与批处理文件所在的工作目录具有相同的工作目录,则会发现它。但是你无法保证,因为用户可以使用任何工作目录启动你的应用程序。你知道吗? (不仅是程序员,而且每个用户都应该理解它。)相反,您可以将可执行文件目录用于批处理文件。
过去,我提供了两个答案全面解释如何在应用程序中使用不同的路径:
如何查找我的程序目录(可执行目录),
如何查找我的程序目录(当前目录,特殊文件夹。
当然,您需要确保批处理文件本身正常工作。
最后,如果批处理文件可能是非编程方法的指示,则使用非编程用户的方法。这看起来很值得怀疑。为什么使用批处理文件?是因为你不知道如何以编程方式解决某些问题,所以你决定使用可用的应用程序?你让他们做这个工作,不想改变什么?你的结果会有多稳定?可维护?
这篇关于如何从wcf执行批处理文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!