这是代码:
string command = string.Empty;
DirectoryInfo dInfoForTesting = new DirectoryInfo(@"E:\TestFiles");
FileInfo[] files = dInfoForTesting.GetFiles();
foreach (FileInfo file in files)
{
string rndPswd = "134";
command = "arj a -m1 -g" + rndPswd + " " + file.Name + ".arj " + file.FullName;
Process.Start(@"C:\ARJ_TEST\programming\test\ARJ.EXE", command);
}
我想自动创建受简单密码134 uisng ARJ 存档器保护的存档。但是当我为第一个文件运行此代码时,我看到了下图。但是这个文件存在!
请帮助理解我,我做错了什么。
编辑:
我决定重写代码以在文件夹中运行 cmd E:\TestFiles
,其中有所有用于测试的文件:
ProcessStartInfo startInfo = new ProcessStartInfo
{
WorkingDirectory = @"E:\TestFiles",
FileName = "cmd.exe",
UseShellExecute = false,
RedirectStandardInput = false
};
foreach (FileInfo file in files)
{
string rndPswd = "134";
command = "arj a -m1 -g" + rndPswd + " " + file.Name + ".arj " + file.Name;
startInfo.Arguments = command;
Process.Start(startInfo);
}
例如,如果我arj a -m1 -g134 10.arj 10
直接从 cmd 运行命令,arj 会创建一个存档10.arj
。但是当我为第一个文件()运行我的代码时,没有任何反应10
......