我使用的是VB.NET 2010。
我的一行代码是:
Encoding.UTF8.GetBytes(FormsAuthentication.HashPasswordForStoringInConfigFile(TextBox_AccessCode.Text, "MD5"))但FormsAuthentication带有下划线,错误为'FormsAuthentication‘未声明。我已经确保导入了System.Web.Security名称空间,但仍然收到消息。
有什么想法吗?
谢谢。
发布于 2011-05-06 14:52:39
FormsAuthentication是asp.net中使用的System.Web的一部分,无法通过Win表单访问。不完全确定您是否能够导入dll并以这种方式使用它,我对此表示怀疑。
如果您只想散列一个md5字符串,您可以执行以下操作:
new System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] bs = System.Text.Encoding.UTF8.GetBytes(TextBox_AccessCode.Text);
x.ComputeHash(bs);发布于 2011-05-07 03:33:17
多亏了TBohnen.jnr,我通过VB.NET发现窗体身份验证不是Windows Forms的一部分。我最终使用以下代码来生成MD5散列:
Public Shared Function MD5(ByVal str As String) As String
Dim provider As MD5CryptoServiceProvider
Dim bytValue() As Byte
Dim bytHash() As Byte
Dim strOutput As String = ""
Dim i As Integer
provider = New MD5CryptoServiceProvider()
bytValue = System.Text.Encoding.UTF8.GetBytes(str)
bytHash = provider.ComputeHash(bytValue)
provider.Clear()
For i = 0 To bytHash.Length - 1
strOutput &= bytHash(i).ToString("x").PadLeft(2, "0")
Next
Return strOutput
End Functionhttps://stackoverflow.com/questions/5906978
复制相似问题