Vb.net net进程。Start启动进程,但将变量保留为nothing

Vb.net net进程。Start启动进程,但将变量保留为nothing,vb.net,nullreferenceexception,process.start,Vb.net,Nullreferenceexception,Process.start,首先,我只会将自己评为一名新手程序员,因为我只知道在工作中完成特定任务所需学习的概念。也就是说,我正在使用进程。开始打开内置的Windows to camera程序,但当我打开时,进程变量为空(无)。因此,我不能使用Process.WaitForExit(),因为代码在执行过程中会导致错误 Imports System.Diagnostics Sub Main() Dim camTimeout as integer = 5 * 60000 Dim camProcess as new

首先,我只会将自己评为一名新手程序员,因为我只知道在工作中完成特定任务所需学习的概念。也就是说,我正在使用进程。开始打开内置的Windows to camera程序,但当我打开时,进程变量为空(无)。因此,我不能使用Process.WaitForExit(),因为代码在执行过程中会导致错误

Imports System.Diagnostics

Sub Main()
   Dim camTimeout as integer = 5 * 60000
   Dim camProcess as new System.Diagnostics.Process

   camProcess = System.Diagnostics.Process.Start("microsoft.windows.camera:")

   If Not camProcess.WaitforExit(camTimeout) then
      MsgBox("timeout")
   Else
      MsgBox("picture")
   End if
End Sub
在执行过程中,摄像头应用程序会打开,但我在camproces.WaitForExit上得到一个“NullReferenceException”。这是因为camProcess什么都不是,我不明白为什么会这样。有人能解释一下为什么camProcess在摄像头应用程序启动时设置不正确,或者给我指一些新手级的参考资料吗。谢谢


编辑:此代码位于Windows窗体应用程序中。

此处的好信息:谢谢@SamAxe!这种联系非常有用。我不知道这是否是最好的解决方案,但它有效[请参见编辑]。如果您有答案,请将其作为答案发布,而不是发布在问题中。如果您可以撤消删除我已编写内容的编辑,我将非常乐意进行此更改。作为我的第一个问题,如果你能告诉我,我所做的不是首选的方法,并允许我在不必重新创建的情况下修复它,那就太好了。