以下是我正在使用的代码:
p = new Process();
p.StartInfo.FileName = AppDomain.CurrentDomain.BaseDirectory + "\\scan.cmd";
p.Start();
p.WaitForExit();
// Read the file and display it line by line.
string line;
System.IO.StreamReader file = new System.IO.StreamReader("\\log.txt");
while((line = file.ReadLine()) != null)
{
itemBeiingScanned_Label.Content = line;
}
file.Close();
构建它时会运行所有内容直到这一点,然后抛出两个措辞相同的无法处理的异常:
例外:
PresentationFramework.dll中出现'System.Windows.Markup.XamlParseException'类型的第一次机会异常
附加信息:调用类型为“SpywareKing.MainWindow”>的构造函数与指定的绑定约束相匹配引发异常。
如果存在此异常的处理程序,则可以安全地继续该程序。
任何见解都会受到赞赏 - 如果您需要帮助查找问题的根源,我可以提供更多信息。
以下是Visual Studio中调试控制台的一些可能有用的信息:
'SpywareKing.vshost.exe'(CLR v4.0.30319:SpywareKing.vshost.exe):已加载'C:\ windows \ Microsoft.Net \ assembly \ GAC_MSIL \ PresentationFramework.Aero2 \ v4.0_4.0.0.0__31bf3856ad364e35 \ PresentationFramework.Aero2.dll”。符号已加载。 mscorlib.dll中出现“System.IO.FileNotFoundException”类型的第一次机会异常 mscorlib.dll中发生了'System.Reflection.TargetInvocationException'类型的第一次机会异常 mscorlib.dll中发生了'System.Reflection.TargetInvocationException'类型的第一次机会异常 System.Xaml.dll中发生'System.Xaml.XamlObjectWriterException'类型的第一次机会异常 PresentationFramework.dll中出现'System.Windows.Markup.XamlParseException'类型的第一次机会异常 附加信息:在类型'SpywareKing.MainWindow'上调用与指定绑定约束匹配的构造函数引发异常。
线程0x33dc已退出,代码为0(0x0)。 PresentationFramework.dll中发生未处理的“System.Windows.Markup.XamlParseException”类型异常 附加信息:在类型'SpywareKing.MainWindow'上调用与指定绑定约束匹配的构造函数引发异常。
程序'[13492] SpywareKing.vshost.exe'已退出,代码为0(0x0)。
答案 0 :(得分:0)
最有可能是
行System.IO.StreamReader file = new System.IO.StreamReader("\\log.txt");
是错误的原因。您不能安全地假设当前目录是日志文件所在的目录。始终指定完整路径。
string logFile = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "log.txt")
System.IO.StreamReader file = new System.IO.StreamReader(logFie);
当用户在FileOpenDialog或FileSaveDialog中选择目录时,当前目录可以随时更改。它不是自动的应用程序目录。调试时,应用程序目录也将是\SolutionFolder\ProjectFolder\bin\Debug
。这是您要查找的目录吗?