|
2008/11/26(Wed) 22:40:16 編集(投稿者)
■No28483 (YOU さん) に返信 > string sCmd = sCreate + "\"" + sBackApp + "\"" + sPath; > Process.Start("schtasks.exe","") セミコロンがあちこち抜けているようですし、肝心の 変数 sCmd が使用されていませんが、掲示板投稿時の誤記でしょうか?
最後の一行は、Process.Start("schtasks.exe", sCmd); ですよね。
> string sCmd = sCreate + "\"" + sBackApp + "\"" + sPath; これだと、『/create /tn "Backup App" /tr…』ではなく、 『/create /tn"Backup App"/tr…』になってしまいますよ。
> c#(エラーは出ずにスケジューラに登録されない) try catch できるような例外としてではなく、そのエラーが 標準エラー出力に吐き出されていたという可能性はありませんか?
ProcessStartInfo psi = new ProcessStartInfo("schtasks.exe", sCmd); Process p = new Process(); p.StartInfo = psi; psi.RedirectStandardOutput = false; psi.RedirectStandardError = true; psi.UseShellExecute = false; p.Start(); string stdError; using (StreamReader st = p.StandardError) { stdError = st.ReadToEnd(); st.Close(); }
それで駄目なら、/RU と /RP のパラメータも指定してみるとか。
|