私はこのモジュールを作成しました。学生と教師の構造の学生と教師が文字列として配置されていることを知っています (これらはラジオ ボタンとして保存されます)が、これらをファイルに保存すると、true または false を保存することで機能します。 ID とパスワードの値。ただし、別のクラスのラジオ ボタンを読み取ることができません。
これは私のモジュールクラスです
Imports System.IO
Module user_info_mod
Structure user
<VBFixedString(3)> Dim name As String
<VBFixedString(3)> Dim password As String
<VBFixedString(7)> Dim student As String
<VBFixedString(3)> Dim teacher As String
End Structure
Public newuser As user
Public userNumber As Integer = FreeFile()
Public userrecordNumber As Integer = 1
Public Sub setRecordNumber()
Dim n As Byte = 0
FileOpen(userNumber, "D:\users.dat", OpenMode.Random, OpenAccess.Read)
While Not EOF(userNumber)
n = n + 1 'increments the record number of the user
FileGet(userNumber, newuser, n)
End While
userrecordNumber = n
FileClose(userNumber)
End Sub
End Module
これは、メインファイルのラジオボタンを読み取ろうとしている場所です( newuser.student=True )
Private Sub cmdLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdLogin.Click
Dim password As String
password = txtPassword.Text
Dim username As String
username = txtUsername.Text
FileOpen(userNumber, "D:\users.dat", OpenMode.Random, OpenAccess.Read)
FileGet(userNumber, newuser, userrecordNumber)
If password = newuser.password And username = newuser.name And newuser.student = True Then
MsgBox("ID Accepted")
Dim frmNew As New Student_selection
frmNew.ShowDialog()
FileClose(userNumber)
Else
FileClose(userNumber)
MsgBox("ID is not accepted")
End If
End Sub
モジュールで文字列をブール値に変更すると、モジュール内でレコード番号を設定するときにユーザーのファイルを保存できなくなります。この問題を解決する正しい方法は何ですか?