我有一个用于启动进程的网页。该进程是具有配置文件的 .net 2.0 可执行文件。如果我自己运行可执行文件,我没有错误。该进程正在启动可执行文件(它正在写入日志文件,我可以看到已生成输出)。
一旦我的可执行文件尝试引用它的配置文件(但仅当它已从网页启动时),它就会引发异常(“配置系统无法初始化”),其中包含以下内容:
System.Configuration.ConfigurationErrorsException:加载配置文件时出错:访问被拒绝。
我有点难过。如何让我的可执行文件加载配置文件?
顺便说一句,我确实检查了当前目录是否仍然是可执行文件的目录。
编辑这是我的代码:
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.UseShellExecute = true;
string mappedFile = Server.MapPath(@".\my.exe");
p.StartInfo.FileName = mappedFile;
p.StartInfo.WorkingDirectory = Server.MapPath(@".\");
p.StartInfo.RedirectStandardOutput = false;
string eco = COAuditBox.Text;
DateTime now = DateTime.Now;
string filename = eco + "_" + String.Format("{0:yyyyMMddHHmmss}", now) + ".txt";
string redirectUrl = "reports/" + filename;
string redirectFile = Server.MapPath(redirectUrl);
//File.WriteAllText(redirectFile, "TEST\t\n");
p.StartInfo.Arguments = eco + " \"" + redirectFile + "\"";
p.Start();
p.WaitForExit();