2014-02-25 60 views
0

我在嘗試傳遞字符串數據類型的值時遇到了問題。在Visual Basic中傳遞字符串值

我能做些什麼來解決這個問題?

發件人:

Private Sub verButton_Click(sender As Object, e As EventArgs) Handles verButton.Click 
     If chkauth.auth(csBox.Text, pwBox.Text) Then 
      mainForm.Enabled = True 
      infoLbl.Visible = False 
     Else 
      infoLbl.Visible = True 
     End If 
    End Sub 

收件人:

Public Function auth(ByVal cs As String, ByVal pw As String) 
     Select Case cs 
      Case "Chauix" 
       If pw = "ihartcha" Then 
        MsgBox("Authentication successful!", MsgBoxStyle.Information, "Success") 
        Return True 
       Else 
        Return False 

       End If 

      Case "Brink" 
       If pw = "Jesusismylife" Then 
        MsgBox("Authentication successful!", MsgBoxStyle.Information, "Success") 
        Return True 
       Else 
        Return False 

       End If 

      Case Else 
       Return False 

     End Select 

    End Function 

它總是導致一個錯誤,當我嘗試執行,導致它的事件。

+0

這是VB6還是VB.NET? – MPelletier

+0

只是想知道,如果你使用你的實際用戶名和密碼?你可能想改變你的例子,如果你是:) – ScottC

+0

Nah。他們不是。他們只是展示我同班同學的樣本:D – Wix

回答

0

不知道你得到什麼錯誤,請指教。你的函數'auth'沒有返回類型 - 首先這樣做,並且啓用嚴格選項和顯式選項,這將幫助你在代碼中找到可能缺少類型或聲明的其他地方。這樣

更改功能:

auth(ByVal cs As String, ByVal pw As String) as Boolean 

這裏是在這些選項頁:http://msdn.microsoft.com/en-us/library/zcd4xwzs.aspx

0

我已經改變了你的代碼一點並運行它作爲一個VB應用程序,它的工作原理完全。看看下面的代碼:

Public Class Form1 

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
    If auth(TextBox1.Text, TextBox2.Text) Then 
     MsgBox("Authentication successful!", MsgBoxStyle.Information, "Success") 
    Else 
     MsgBox("Authentication failed!", MsgBoxStyle.Critical, "Failed") 
    End If 
End Sub 

Public Function auth(ByVal cs As String, ByVal pw As String) 
    Select Case cs 
     Case "demo1" 
      If pw = "100" Then 
       Return True 
      Else 
       Return False 

      End If 

     Case "demo2" 
      If pw = "100" Then 
       Return True 
      Else 
       Return False 

      End If 

     Case Else 
      Return False 

    End Select 

End Function 

末級

我希望這能解決你的問題。