1

C# Win Forms でこれに取り組んでいます。

どのように変数を設定し、その後コマンド copy を実行しますか? コードが現在のように、Process1.startInfo.Arguments = "/k SET etc. etc." 「/k COPY etc. etc」によって上書きされます。コマンドとそこには実行されません。

    public void OutputBtn_Process_Click(object sender, EventArgs e)
    {
        foreach (FileInfo fi in listBox1.Items)
        {
            Process process1 = new Process();
            process1.StartInfo.Arguments ="/k Set filename ="+fi.Name;
            process1.StartInfo.UseShellExecute = false;
            process1.StartInfo.Arguments = "/k copy /b %filename% test.txt";
            //process1.StartInfo.LoadUserProfile = true;
            process1.StartInfo.FileName = "cmd.exe";
            process1.StartInfo.WorkingDirectory = Path.GetDirectoryName(fi.FullName);
            process1.Start();
        }
    }
4

3 に答える 3

3

RE: 環境変数

使用できるProcessStartInfo ( ProcessStartInfo.EnvironmentVariables )からそれらのコレクションがあります。

RE: ファイルをコピーしています。File.Copy
を使用します。

File.Copy(src, destination);
于 2012-08-17T20:07:19.577 に答える
1

process1.StartInfo.Arguments = "copy /b \"" + fi.Name + "\" test.txt";

于 2012-08-17T20:05:18.400 に答える
0

あなたが何をしようとしているのかについての情報を提供しなかったので、あなたのコードが何をしているのかを正しく実行する方法はFile.Copyです。

于 2012-08-17T20:08:02.117 に答える