実現したいこと
・現在、VisualStudioのデバックモードで(ASP.Netサーバー)で、
ProcessStartInfoを使用してコマンドプロンプトを起動が出来ていることを確認済。
上記をIISサーバーで実施したところ、動作が上手くいかないので、
コマンドプロンプトが正しく起動しているのか、コマンドプロンプトの命令でコケているのか等を
判断するために、Logに出力したい。
前提
C#でアップロードした.xlsxファイルを、batを用いてcsvファイルに変換し、
そのCSVファイルを使用して、内容のエラーチェック等をする機能を作成しています。
該当のソースコード
C#
1ProcessStartInfo ps = new ProcessStartInfo("cmd.exe" , "ExcelファイルをCSVに変換するbatを使用するコマンド文")2 3ps.CreateNoWindow = true;4ps.UseShellExecute = false;5ps.RedirectStandardOutput = true;6 7Process process = Process.Start(ps)8string msg = process.StandardOutput.ReadToEnd();9process.WaitForExit();10process.Close();11 12Console.WriteLine(msg);
試したこと
RedirectStandardOutput、RedirectStandardErrorなどで動作確認をしてみたのですが、
msgに入る値が空文字となっていました。
想定ではmsgにログに近しい物が入っていると思っていましたが、上手くいきませんでした。

0 コメント