我试图捕获错误与形式捕捉命令行错误
Myapp.exe myFile.txt
的应用然而,应用程序引发了不正确的命令行参数“未处理的异常 - 路径是法律形式的不”。
下面是我的代码,我想知道为什么它不显示代码中提供的消息框?谢谢。
我试图捕获错误与形式捕捉命令行错误
Myapp.exe myFile.txt
的应用然而,应用程序引发了不正确的命令行参数“未处理的异常 - 路径是法律形式的不”。
下面是我的代码,我想知道为什么它不显示代码中提供的消息框?谢谢。
如果您传递给File.Exists
(例如,C:\D:/E:\
)无效的路径,你会得到例外。
不幸的是我没有,我不能在我的代码中找出什么是错的。 – 2010-06-16 00:59:44
你究竟是什么意思? – SLaks 2010-06-16 01:10:23
你应该修改你的代码像波纹管是越多越好?d
String[] cmdlineArgs = Environment.GetCommandLineArgs(); if (cmdlineArgs.Length == 2) { try { if (File.Exists(cmdlineArgs[1].ToString())) ConfigParameters.SetConfigParameters(cmdlineArgs[1].ToString()); } catch (Exception ex) { MessageBox.Show("Configuration file does not exist.Restarting..."); Environment.Exit(1); } }
因为当你的文件路径包含一些特殊字符(<,>,*,等等),File.Exists()可能会引发异常,如您所见。
尝试删除'.ToString()' – 2010-06-16 00:55:37
@Rubens:这没有帮助。 (但是,他应该这样做) – SLaks 2010-06-16 00:56:00
尝试删除ToString()。不起作用。谢谢。 – 2010-06-16 00:58:38