我希望程序结束。 Application.Exit只是让我回到循环中。 已编辑包含代码:: 模块模块1
Sub Main()
Sub1()
Sub2()
End Sub
Sub1()
EndSub
Sub2()
End Sub
End Module
编辑:它似乎循环回到Sub ChooseDomain2 ..我也包括Sub 1。
Sub ChooseDomain1()
Dim DomainName As Object
'Get List of all users on Domain using WinNT
DomainName = InputBox(messageOK, Title, defaultValue)
de.Path = "WinNT://****".Replace("****", DomainName)
If DomainName Is "" Then ChooseDomain2() Else StoreUserData1()
End Sub
Sub ChooseDomain2()
MsgBox("Welcome to the Domain Searcher. Click OK to Auto Search for Domain")
Dim MsgBoxResult As Object = ActiveDirectory.Domain.GetCurrentDomain.Name
MsgBoxResult = InputBox(messageCan, Title, MsgBoxResult)
de.Path = "WinNT://*****".Replace("*****", MsgBoxResult)
StoreUserData1()
End Sub
答案 0 :(得分:1)
当它击中结束模块时,它只从Square 1开始。
模块根本不执行 - 因此它永远不会“命中结束模块”而永远不会从“方块1”开始。模块只是对可以执行的方法进行分组,Main
是一种特殊的方法,可以作为应用程序的开始。
也就是说,您的代码保证(!)不会重复执行。此外,代码中的任何位置都没有Application.Exit
,因此很难看到您实际执行的内容。不管怎么说,不是你展示的代码。
请注意,VB可能会执行您未编写的代码(代码可以由编译器自动生成,特别是应用程序框架)但这似乎不会发生在您的情况下,并且不应该循环在任何情况下。但同样,根据您提供的信息,这是不可能的。
答案 1 :(得分:0)
Application.Exit
不是必需的,因为控制台应用程序在完成执行Sub Main中的最后一行后将退出。如前所述,很可能你有Sub1调用Sub2(或类似的东西),所以在每个sub的开头设置一个断点,以找到连续调用哪一个。然后,您可以在代码中进行搜索,以查找此子调用的位置。