这是我的代码:
Public ATTEMPTS As Integer = My.Settings.ATTEMPTS
Private Sub EKV_Load(sender As Object, e As EventArgs) Handles MyBase.Load
If My.Settings.ATTEMPTS = 3 Then
Me.Enabled = False
MSGBOX.Show()
Else
VKBox.Select()
End If
End Sub
我遇到的问题基本上是这样的:用户有三次尝试输入密码来访问信息。每次用户无法正确输入密码时,我在应用程序设置中设置了一个名为“ATTEMPTS”的变量。最初是my.settings.ATTEMPTS = 0但是在每次尝试之后它再添加一次尝试直到ATTEMPTS = 3.我还设置了应用程序以在每次添加尝试时保存设置,这样即使他们关闭应用程序并再试一次记录并保存尝试次数。当我在Visual Basic中调试应用程序时,一切正常,如果尝试= 3或不= 3,那么它会识别并加载正确的表单。但是当我发布应用程序或者甚至尝试将应用程序从visual basic文件夹下的文件夹移动或复制到另一个地方时,它会在第一次尝试打开应用程序时立即识别ATTEMPTS = 3并加载错误的表单,但是我将应用程序移回到它识别ATTEMPTS = 0的文件夹并加载正确的表单????我已经尝试启用make一个单实例应用程序选项,而我正在尝试的其他任何工作都没有!?请帮忙。
答案 0 :(得分:0)
您的设置保存在路径shown in this answer中。而叶子目录路径的哈希值取决于EXE文件的目录。因此,每次移动EXE时,都会创建新设置。您可以使用以下几种方法: