Почему «1.bat» не может успешно работать? Любая помощь будет оценена. «1.bat» был создан успешно. Он может работать без ошибок, но не может переименовывать файлы.Как написать файл «* .bat»?
private void button1_Click(object sender, EventArgs e)
{
string str = System.Environment.CurrentDirectory;
str += "\\1.bat";
string txt = "";
txt = "ren *.mp3 *.wav";
StreamWriter sw = new StreamWriter(str,false, Encoding.UTF8);
sw.Write(txt);
sw.Close();
Process p = new Process();
p.StartInfo.FileName = str;
p.StartInfo.Arguments = "";
p.StartInfo.UseShellExecute = false;
p.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
p.Start();
}
Что вы подразумеваете под _can't run successfully_? Любое сообщение об исключении или ошибке? –
Похож на '\\ 0.bat', а не' 0.bat'. '\\ 0' является символом NULL и недействителен в этом контексте. –
Попробуйте установить UseShellExecute в StartInfo. Но вам не нужно вызывать в .bat для массового переименования файлов! Вы можете легко скопировать код на C#. (Вероятно, вы также не должны предполагать, что у вас есть доступ на запись к текущему каталогу, и есть теоретическая атака, если злоумышленник может изменить файл bat между вами, написав его и выполнив его: они могут заставить вас запускать произвольные команды в качестве пользователя .) – Rup