Vb.net 初始化全局变量.Net
我试图通过在事件中“初始化”模块内的模块/变量来找到一些帮助 我需要加载它,以便下面的WinForm使用它(显然) 让我解释一下 我正在使用WinSCP库,作者本人在WinSCP方面获得了大量帮助。 但是为了解决当前的问题,我需要初始化一个全局变量。 所以变量就在那里,按顺序排列,但“Form2”拒绝使用它,因为它显然需要从Form1中的事件启动/初始化。 模块称为公共模块模块1Vb.net 初始化全局变量.Net,vb.net,winforms,global-variables,Vb.net,Winforms,Global Variables,我试图通过在事件中“初始化”模块内的模块/变量来找到一些帮助 我需要加载它,以便下面的WinForm使用它(显然) 让我解释一下 我正在使用WinSCP库,作者本人在WinSCP方面获得了大量帮助。 但是为了解决当前的问题,我需要初始化一个全局变量。 所以变量就在那里,按顺序排列,但“Form2”拒绝使用它,因为它显然需要从Form1中的事件启动/初始化。 模块称为公共模块模块1 Public Module Module1 Public mySession As Session End Mo
Public Module Module1
Public mySession As Session
End Module
我需要在本次活动中启动/启动它
Private Sub Loginbutton_Click(sender As Object, e As EventArgs) Handles Loginbutton.Click
WinSCP作者无法提供帮助,因为它仅在WinSCP之外,而且只是.Net/VB问题。我在Stackoverflow上得到了很多很好的帮助,所以我知道这里会有人来帮助我
这可能是我忽略和忘记的一些简单的事情。
此时我的头很痛,所以任何帮助、代码示例和其他形式的帮助都非常感谢,因为我的头在VisualStudio的所有东西中都受到了轻微的伤害 你可以这样做
Public Module Module1
Public mySession As New Session
End Module
或
或者在按钮单击事件上创建实例
Private Sub Loginbutton_Click(sender As Object, e As EventArgs) Handles Loginbutton.Click
mySession = New Session()
End Sub
如果不能使用此选项,则需要阅读库的文档,因为有时需要一个参数来初始化对象,或者甚至不能创建它的实例,因为只能创建调用将在其中创建的其他函数的实例(这种情况是出于安全原因)你说“Form2”拒绝使用它是什么意思?如图所示,
mySession
只是声明为notinstanced。FWIW,它可能不需要是公共的
,朋友
就足够了。“实例”!就是这个词,谢谢。嗯,一旦加载form2,它就需要使用来自库WinSCP的信息。你可以在这里查看帖子;检查最后3条评论。它在调试过程中给我错误。“对于mySession.ListDirectory(“/Database”).Files中的每个i As RemoteFileInfo”-“对象引用未设置为对象的实例。”几乎所有NullReference异常都有相同的原因。请参阅以获取此方面的帮助。答案中特别提到了这一点。@PiperMp3:从您的说法来看,这听起来像是在您的登录按钮中。单击处理程序,您需要类似于mySession=newsession(args)
的内容。我无法告诉您参数需要是什么,这取决于会话类的构造函数所期望的。是的,它真的很简单。关于那个“新”操作符,我尝试了很多其他版本。新的这个,新的那个,但是我尝试的方式是“newsession=mySession”和“New mySession=Session”,这显然是错误的。啊,我知道Stackoverflow是一种方式!我知道那个“新”东西,但我不知道如何为VisualStudio表述它。因此,我使用代码“mySession=new Session()”得到了一个新的反应,而不是NullReference异常,我得到的是“Session not Open”,这可能与WinSCP更相关?是的,在创建实例时可能需要传递一些参数,如:Session=new Session(“我的用户名”、“密码”)您可以传递不同的参数,但这取决于库是如何开发的。您可以查看库的更多信息。在VisualStudio中,带有智能类型的第一个会话=新会话(在这个按下键CTRL+空格键之后,您将看到如何创建实例的这个函数的文档。哦,太棒了,非常感谢MrAlEX。StAcExpRoad中的信任。
Private Sub Loginbutton_Click(sender As Object, e As EventArgs) Handles Loginbutton.Click
mySession = New Session()
End Sub