Web アプリケーションを起動する Windows デスクトップ アプリケーションがあります。
private void Home_Load(object sender, EventArgs e)
{
string url = string.Format("http://localhost:49916/Express/Login.aspx?yek@soh={0}", System.Configuration.ConfigurationSettings.AppSettings["HK"].ToString());
Process.Start("IExplore.exe", url);
this.Close();
}
私のマシンでは問題なく動作しています。次に、それをインストールするためのセットアップ プログラムを作成しました。これは問題なく動作しましたが、新しくインストールしたプログラムを運用マシンで実行すると、次の例外が発生します。
System.NullReferenceException: Object reference not set to an instance of an object.
at HospitalClient_App.Home.Home_Load(Object sender, EventArgs e)
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
ラインを変えたら
Process.Start("IExplore.exe", url);
に
Process.Start("IExplore.exe","http://localhost:49916/Express/Login.aspx?yek@soh=6775228");
その後、プログラムが動作します。
私の app.config は次のとおりです。
<configuration>
<appSettings>
<add key="HK" value="PRO2"/>
<add key="ClientSettingsProvider.ServiceUri" value=""/>
</appSettings>
<startup>
<supportedRuntime version="v2.0.50727"/>
</startup>
</configuration>
この問題を解決するにはどうすればよいですか? 問題の原因は何ですか?