我需要在远程服务器本身上执行批处理文件。我使用下面的代码作为示例,但是批处理文件正在应用程序服务器本身而不是远程服务器上执行。如果我需要使用远程服务器上的批处理文件创建日志文件,则会引发错误,指出找不到文件路径。感谢您的事先帮助
Number of teams with both home and away broadcasts: 11
Week 1: broadcast team 1 at team 10
Week 2: broadcast team 10 at team 11
Week 3: broadcast team 5 at team 8
Week 4: broadcast team 8 at team 4
Week 5: broadcast team 6 at team 9
Week 6: broadcast team 11 at team 3
Week 7: broadcast team 4 at team 2
Week 8: broadcast team 9 at team 7
Week 9: broadcast team 7 at team 1
Week 10: broadcast team 2 at team 5
Week 11: broadcast team 3 at team 6
答案 0 :(得分:0)
在远程服务器本身上执行批处理文件的解决方法是执行Windows Scheduler作业,并通过一些c#代码触发该作业。请找到以下代码来实现
string job = @"""\JobLocation\JobName""";
string server = @"XXXXXXXXXXX";
string user = @"Domian\XXXXXX";
string pwd = @"XXXXXXXXXXXXXXX";
string line = @" /run /tn " + job + " /s " + server + " /u " + user + " /p " + pwd;
var process = new Process();
var startInfo = new ProcessStartInfo
{
CreateNoWindow = true,
FileName = @"C:\WINDOWS\SYSTEM32\schtasks.exe",
WindowStyle = ProcessWindowStyle.Hidden,
Arguments = line,
//WorkingDirectory = AppDomain.CurrentDomain.BaseDirectory,
UseShellExecute = false,
RedirectStandardError = true,
RedirectStandardOutput = true
};
process.StartInfo = startInfo;
process.Start();
process.WaitForExit();
string output = process.StandardOutput.ReadLine();
string errors = process.StandardError.ReadLine();code here