Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net Visual Basic“;对象引用未设置为对象的实例。”;_Vb.net_Object_Reference - Fatal编程技术网

Vb.net Visual Basic“;对象引用未设置为对象的实例。”;

Vb.net Visual Basic“;对象引用未设置为对象的实例。”;,vb.net,object,reference,Vb.net,Object,Reference,我正在尝试启动cmd控制台并运行命令。该命令有两个点需要用户输入,这就是为什么我创建了字符串“cmdcode”,它将预设信息和用户输入组合在一起。当程序运行时,我得到错误代码“Object reference not set to a instance of a Object.”两次,一次是指创建cmdcode的整行,另一次是指同一行上的实际变量“cmdcode”。发生了什么,如果有不同的方法,那么如何做 另外,如果有人知道如何运行“process.start()”命令“x”的次数,那就太好了

我正在尝试启动cmd控制台并运行命令。该命令有两个点需要用户输入,这就是为什么我创建了字符串“cmdcode”,它将预设信息和用户输入组合在一起。当程序运行时,我得到错误代码“Object reference not set to a instance of a Object.”两次,一次是指创建cmdcode的整行,另一次是指同一行上的实际变量“cmdcode”。发生了什么,如果有不同的方法,那么如何做

另外,如果有人知道如何运行“process.start()”命令“x”的次数,那就太好了

Public Class Form1
    Dim cmdcode As String = "ping" + TextBox1.Text + "-t -l" + TextBox2.Text
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    End Sub
    Private Sub STARTBUTTON_Click(sender As Object, e As EventArgs) Handles STARTBUTTON.Click
        Process.Start("CMD", cmdcode)
    End Sub
End Class

在初始化控件之前,无法访问它们

在这里:

正在尝试访问它们,这是在它们初始化之前。这些文本框当时也没有任何输入,可能是发送该命令的按钮

做一些类似于:

Public Class Form1

  Dim cmdcode As String 

  Private Sub btnStart(sender As Object, e As EventArgs) Handles btnStart.Click
     cmdcode = "ping" + TextBox1.Text + "-t -l" + TextBox2.Text
     Process.Start("CMD", cmdcode)
  End Sub
具体地说,在初始化字段
cmdcode
时,将不会创建此答案中的“Visual Basic表单”部分--
TextBox1
TextBox2
。表单字段在调用创建组件的
InitializeComponent
之前初始化。另外….;)
Public Class Form1

  Dim cmdcode As String 

  Private Sub btnStart(sender As Object, e As EventArgs) Handles btnStart.Click
     cmdcode = "ping" + TextBox1.Text + "-t -l" + TextBox2.Text
     Process.Start("CMD", cmdcode)
  End Sub