我还有一个问题:
我能够构建我的VB.NET应用程序。然而,当我去调试它时,我得到了一个未处理的异常:
系统.InvalidOperationException发生HResult=0x80131509
消息=创建表单时出错。有关详细信息,请参见Exception.InnerException。错误是:未将对象引用设置为对象的示例。来源= Prologic PC StackTrace:
在Prophet PC。My. MyProject.MyForms。在以下位置创建__Instance__[T](T示例):第190行,位于ProProximity PC上的Proximity PC.My.MyProject.MyForms.get_Front1()。My.MyApplication. C语言中的OncodeMainForm():\Users\菲利普\source\Workspaces\Upwork Projects\Prolog It\Prolog PC\My Project\Application。设计师。vb:第35章在微软VisualBasic。应用服务。WindowsFormsApplicationBase。Microsoft的OnRun()。VisualBasic。应用服务。WindowsFormsApplicationBase。DoApplicationModel()在Microsoft。VisualBasic。应用服务。WindowsFormsApplicationBase。运行(String[] commandLine)。My.MyApplication.Main(String[] Args)in:第八十一行
内部异常1:NullReferenceException:未将对象引用设置为对象的示例。
奇怪的是,它出现在自动生成的代码中,在Application.Designer.vb文件中。我已经确认构造函数是公共的,并且表单的名称与此文件中的名称匹配:
Namespace My
'NOTE: This file is auto-generated; do not modify it directly. To make changes,
' or if you encounter build errors in this file, go to the Project Designer
' (go to Project Properties or double-click the My Project node in
' Solution Explorer), and make changes on the Application tab.
'
Partial Friend Class MyApplication
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Public Sub New()
MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
Me.IsSingleInstance = true
Me.EnableVisualStyles = true
Me.SaveMySettingsOnExit = true
Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterAllFormsClose
End Sub
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Protected Overrides Sub OnCreateMainForm()
Me.MainForm = Global.ProovePC.Front1 'Error occurs here?
End Sub
End Class
End Namespace
我有点迷失在这一点上,因为我是新的VB.NET,但我想认为修复是一个简单的。对于那些想知道的人,我正在运行Visual Studio 2017。我应该注意到,我来自C#背景,最近进入了VB.NET。所以,请尽可能多地解释。
编辑:
表单构造器:
Public Sub New()
' This call is required by the designer.
'NewMethod()
InitializeComponents()
' Add any initialization after the InitializeComponent() call.
End Sub
编辑:
好了,这里是有趣的部分,现在我在表单的自动生成的构造函数中得到了InitializeComponents函数本身的错误。一旦我注解掉这个函数,我就可以构建和运行应用程序了。我只能走这么远,因为该应用程序需要硬件完全运行,我还没有连接。
现在,这里是有趣的部分,如果我要注解掉构造函数,在它上面有一行返回为未定义的引用错误:
Public MainStatus As StatusStrip = StatusStrip1 'Error is here now
'Public Sub New()
' This call is required by the designer.
'InitializeComponent()
' Add any initialization after the InitializeComponent() call.
'End Sub
对于那些想知道,我现在在front1.vb文件中
1条答案
按热度按时间im9ewurl1#
表单控件中有一个属性,当它需要设置为Me时,它被设置为nothing。
至于代码的随机行,
Public MainStatus As StatusStrip = StatusStrip1
,我认为它是不小心复制粘贴在那里,因为变量只在该行使用。我把它注解掉了,现在一切都很好。