2017-02-17 53 views
0

我想通過C#應用程序使用BCP執行批量複製。這是我需要執行命令:如何解決使用BCP時「系統找不到指定的文件」異常

var bcpArgs = "EXEC spReportExecutor @Query = 'SELECT * FROM ExpAifaBrosureCommTape', @Parameters = '<Parameters> <DBToUse>sql_converted_absaDR</DBToUse></Parameters>'" queryout "C:\MISAutomationReports\BCP\AifaBrosureCommissionTape.dat" -e"C:\MISAutomationReports\BCP\AifaBrosureCommissionError.txt" -T -c -S [myserver] -d [mydatabase]

我執行命令如下: System.Diagnostics.Process.Start("bcp.exe", bcpArgs);

這工作我的本地機器上很好,但是當部署到我們的開發/生產服務器,我得到一個「系統找不到指定的文件」異常。但是,如果我直接在命令行中運行bcpArgs,則該過程是成功的。

我錯過了什麼?

回答

0

您必須指定的bcp.exe的路徑,而不是:

System.Diagnostics.Process.Start("bcp.exe", bcpArgs) 

嘗試:

System.Diagnostics.Process.Start("path\bcp.exe", bcpArgs) 
+0

而且,正如你的答案是我確實做到了!但爲什麼它會在我的本地機器上工作(沒有指定bcp路徑)? –

+0

我相信因爲c#應用程序和bcp工具駐留在本地計算機上的同一文件夾中 – apomene

相關問題