次のコードはNullReferenceExceptionを引き起こします
tStartParameter = String.Format(tStartParameter, tTo, tSubject)
tProcess = Process.Start(New ProcessStartInfo(tStartParameter) _
With {.UseShellExecute = True})
tProcess.WaitForExit()
tStartParameterは次のとおりです。
https://mail.google.com/?view=cm&fs=1&tf=1&to=t@example.com&su=boogaloo!!
デバッガーを使用すると、Process.Startがnullを返していることがわかります。だから..なぜこれが起こっているのかについて何か考えはありますか?ユーザーが起動されたプロセスを完了するまで、プログラムの実行をブロックしたいと思います。
更新:コードを次のようにリファクタリングします:
tStartParameter = String.Format(tStartParameter, tTo, tSubject)
tProcess = New Process
tProcess.StartInfo = New ProcessStartInfo(tStartParameter) _
With {.UseShellExecute = True}
tProcess.Start()
tProcess.WaitForExit()
この例外が発生します:
InvalidOperationException:このオブジェクトに関連付けられているプロセスはありません。