denedim olmadı ayrıca hazır projeler vb.net dilindeMybb login sayfasına post yollarsın ve gelen cevaba göre işlem yaparsın hazır projeleri var aratırsan bulabilirsin
İkiside net tabanlı olduğu için ufak değişiklikler yaparak kullanabilirsin çok zor bir şey değil zaten kaynak elindeyken kodlayabilmen gerekiyordenedim olmadı ayrıca hazır projeler vb.net dilinde
'Written by Webhouse, please add credits if you use this.
Imports System.Net
Imports System.Text
Imports System.IO.Compression
Public Class HTTPWorker
Public Shared cookies As CookieContainer
Private data As Byte()
Public Function login(ByVal forumInstance As Forum) As Boolean
Dim request As HttpWebRequest
Dim response As HttpWebResponse
Dim stream As IO.Stream
cookies = New CookieContainer
Try
request = WebRequest.Create(forumInstance.loginUrl)
setConnectionParameters(request)
data = Encoding.ASCII.GetBytes(forumInstance.logindata)
request.ContentLength = data.Length
stream = request.GetRequestStream()
stream.Write(data, 0, data.Length)
stream.Flush()
stream.Close()
response = request.GetResponse()
If forumInstance.isLoggedIn(cookies) Then
Return True
End If
Catch ex As Exception
'do something with the exception
End Try
Return False
End Function
Public Sub setConnectionParameters(ByRef request As HttpWebRequest)
With request
.Method = "POST"
.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
.ContentType = "application/x-www-form-urlencoded"
.Proxy = Nothing
.CookieContainer = cookies
.KeepAlive = True
.ServicePoint.Expect100Continue = False
.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.8) Gecko/20051111 Firefox/1.5; FBI-version/0.07"
'.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip,deflate") if you want to speed up the steam reading (most boards support this)
End With
End Sub
'this function not implemented, it is added to show how to link the cookies from the login
Public Sub navTo()
'Dim request As HttpWebRequest
'request.CookieContainer = cookies
'etcetc: you could set idletime, speed if you simultaniously want to fire requests, headers, method (get/post), etc
End Sub
'Note: to read the result in login()
'--If you want to read the result (using compression techniques to speed it up--
'Dim responseStream As IO.Stream = response.GetResponseStream()
'If (response.ContentEncoding.ToLower().Contains("gzip")) Then
' responseStream = New GZipStream(responseStream, CompressionMode.Decompress)
'ElseIf (response.ContentEncoding.ToLower().Contains("deflate")) Then
' responseStream = New DeflateStream(responseStream, CompressionMode.Decompress)
'End If
'Dim streamReader As IO.StreamReader = New IO.StreamReader(responseStream, Encoding.Default)
'Dim result As String = streamReader.ReadToEnd().Trim()
'streamReader.Close()
'--
End Class
'Written by Webhouse, please add credits if you use this.
Public MustInherit Class Forum
Private _logindata As String
Private _loginUrl As String
Private _url As String
Private _username As String
Private _defaultCookieName As String
Private _defaultCookieSearch As String
Public Sub New(ByVal url As String, ByVal loginUrl As String, ByVal username As String, ByVal cookieName As String,
ByVal cookieSearch As String, Optional ByVal data As String = "")
Me._url = url
Me.loginUrl = loginUrl
Me.logindata = data
Me.username = username
Me._defaultCookieName = cookieName
Me._defaultCookieSearch = cookieSearch
End Sub
Public MustOverride Function isLoggedIn(ByVal cookies As System.Net.CookieContainer) As Boolean
Public Property logindata() As String
Get
Return Me._logindata
End Get
Set(ByVal value As String)
Me._logindata = value
End Set
End Property
Public Property url() As String
Get
Return Me._url
End Get
Set(ByVal value As String)
Me._url = value
End Set
End Property
Public Property loginUrl() As String
Get
Return Me._loginUrl
End Get
Set(ByVal value As String)
Me._loginUrl = value
End Set
End Property
Public Property username() As String
Get
Return Me._username
End Get
Set(ByVal value As String)
Me._username = value
End Set
End Property
Public Property defaultCookieName() As String
Get
Return Me._defaultCookieName
End Get
Set(ByVal value As String)
Me._defaultCookieName = value
End Set
End Property
Public Property defaultCookieSearch() As String
Get
Return Me._defaultCookieSearch
End Get
Set(ByVal value As String)
Me._defaultCookieSearch = value
End Set
End Property
End Class
'Written by Webhouse, please add credits if you use this.
Imports System.Net
Public Class myBB
Inherits Forum
Public Sub New(ByVal url As String, ByVal username As String, ByVal password As String)
MyBase.New(url, url & "/member.php?action=login", username, "mybbuser", "", "username=" + username & "&password=" + password & "&submit=Login&action=do_login&url=")
End Sub
Public Overrides Function isLoggedIn(ByVal cookies As System.Net.CookieContainer) As Boolean
If Not IsNothing(cookies.GetCookies(New Uri(url)).Item(defaultCookieName)) Then
Return True
End If
Return False
End Function
End Class
Dim wrkr As New HTTPWorker()
Dim myBBForum As New myBB("http://memoryhackers.org/", TextBox1.Text, TextBox2.Text)
If wrkr.login(myBBForum) Then
MsgBox("Logged in successfully!")
Else
MsgBox("Invalid account, please try again! Register if you don't have an account.")
End If