왜 "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();
}
_이 (가) 성공적으로 실행하지 못했습니다라는 의미는 무엇입니까? 모든 예외 또는 오류 메시지? –
'0.bat'이 아니라'\\ 0.bat'처럼 보입니다. '\\ 0'은 NULL 문자이며이 문맥에서는 유효하지 않습니다. –
StartInfo에서 UseShellExecute를 설정해보십시오. 그러나 파일을 일괄 적으로 이름을 바꾸려면 .bat를 호출 할 필요가 없습니다! C#에서 쉽게 코딩 할 수 있습니다. (현재 디렉토리에 대한 쓰기 권한이 있다고 가정해서는 안되며 악의적 인 사용자가 파일을 작성하고 실행하는 사이에 파일을 수정할 수있는 이론적 인 공격이 있습니다. 사용자가 임의의 명령을 사용자로 실행할 수 있습니다 .) – Rup