store it in a global var...Originally Posted by batori
store it in a global var...Originally Posted by batori
How To Make A Youtube Downloader
I use Visual Studio 2008 Pro...
Hi.
Help!!! Some symbols like + and = don't send using WinHTTPRequest.Send
And how to send multiple variables?
Thank you very much for the tutorial. This is the only place I could find that had a tut about the winsock and http.
I have made a new thread about this problem here if you would be so kind as to read it
I can log into phpbb forums but when I try to post I get
Invalid Session. Please resubmit the form.
I'm sending the following to the server:
POST /community/posting.php?mode=post&f=26&sid=e5ab54e065e67b736f0e04e30287e880 HTTP/1.0
Host: www.phpbb.com
Accept: "/"
Content-Type: application/x-www-form-urlencoded
Referer: http://www.phpbb.com/community/ucp.php
Content-Length: 54
Connection: Keep-Alive
Cache-Control: No-Cache
Cookie: phpbb3mysql_data=a%3A2%3A%7Bs%3A11%3A%22autologinid%22%3Bs%3A0%3A%22%22%3Bs%3A6%3A%22userid%22%3Bs%3 A5%3A%2286360%22%3B%7D; phpbb3mysql_sid=e5ab54e065e67b736f0e04e30287e880
subject=Thanks&description=&message=Thanks&post=submit
Probably sending a bad/expired session id.
You'll need to parse out the cookie and session id that the server sends back to you, put it in a variable, and send it with future GET/POST requests.Cookie: phpbb3mysql_data=a%3A2%3A%7Bs%3A11%3A%22autologinid%22%3Bs%3A0%3A%22%22%3Bs%3A6%3A%22userid%22%3Bs%3 A5%3A%2286360%22%3B%7D; phpbb3mysql_sid=e5ab54e065e67b736f0e04e30287e880
Thank you for the reply will try that.
Hi,
how attach jpg image in your code
please help
Great program, I'm using winsock and I'm running into a problem and I noticed your program does the same thing
In your program, use the GET method and go to
news.yahoo.com
when the data comes in, scroll all the way to the bottom of the data,
you'll notice that it is truncated. This is just an example, there are tons of other web sites that this happens to too.
I've been getting headaches on how to fix this problem, I need to be able to retrieve web page data with winsock. Got any ideas?
Last edited by HookahSchwa; Jan 5th, 2010 at 11:57 PM.
There is a limit of 64k to the length of strings in Visual Basic 6 and a 32k limit on the text box. If you want to display everything then consider the rich text control and retrieve the response from the server in 1000 byte chunks and append to the control.
This program is only a demonstration of how to format the requests so you will need to make modifications to the code to make it do what you require.
Last edited by visualAd; Jan 6th, 2010 at 03:28 PM.
PHP || MySql || Apache || Get Firefox || OpenOffice.org || Click || Slap ILMV || 1337 c0d || GotoMyPc For FREE! Part 1, Part 2
| PHP Session --> Database Handler * Custom Error Handler * Installing PHP * HTML Form Handler * PHP 5 OOP * Using XML * Ajax * Xslt | VB6 Winsock - HTTP POST / GET * Winsock - HTTP File Upload
Latest quote: crptcblade - VB6 executables can't be decompiled, only disassembled. And the disassembled code is even less useful than I am.
Random VisualAd:Blog - Latest Post: When the Internet becomes Electricity!!
Spread happiness and joy. Rate good posts.![]()
Do you have an example of how do set the winsock control to receive data in chunks?
Nevermind I found the maxlen argumentthank you for explaining what that problem was!
with this program
is it possible to login to hotmail account.
i mean as i use the explorer to login through the login page.
i want to do that with a vb app, not with the explorer.
is it possible with this program ?
if yes, an example code would be much appreciated.
The URL Encode function is wrong.
If the character code is less than 16 the hex code is only one symbol. It must be with a leading zero. Might be fixed this way:
Or this way:Code:If curChar < 16 Then newStr = newStr & "%0" & Hex(curChar) Else newStr = newStr & "%" & Hex(curChar) End If
Code:newStr = newStr & "%" & Right("0" & Hex(curChar), 2)
hay,
i attached a zip, which contain a text file i got from:
live server on "login.live.com"
this is a html file of the login page, that i managed retrieve via winsock,
but i don't know how to continue,
what the exact text i need to send back, with my username and password,
can someone please post the exact string i need to send back to the server
with my username and password.
you can write in the username: whatsup
in the password: 00000000
so i can find exactly what you did.
thanks in advance.
Hello All,
I am new to this forum, this is my first post and I need help
I just downloaded the zip package from first post. Attempted to run the project on MS Visual Studio 2005, which attempted to convert the project from VB6 to VB2005 . Now, when I run the application and do exactly what I am supposed to do, the request and output boxes confirm that, it communicates to the server as http://hostname/myfile.php?var1=xx&var2=yy&var3=zz but, no data passes through.
Though I made some modifications , I now have no manual modifications (except from automatic upgrade). Would anyone please help me by telling what could possibly be wrong?
In case needed, my post_dump.php is as follows:Code:<?php include_once("dbconnect.php"); date_default_timezone_set('Europe/London'); $Day=date("d-m-y H:i"); if ($_GET): foreach($_GET as $name => $var) : $store_array[]=$var; endforeach; endif; $var1=$store_array[0]; $var2=$store_array[1]; $var3=$store_array[2]; mysql_query("INSERT INTO `table` (var1,var2,var3,Day)VALUES ('$var1','$var2','$var3','$Day')"); ?>
Welcome to VBForums
Attempting to use VB6 code in VB.Net (VB 2002 and later) is a bad idea, as not only does it take extra effort to get it working, but it is also likely to be much less efficient than the VB.Net methods of achieving the same tasks.
I recommend you find the equivalent in our VB.Net CodeBank forum instead.
(2007, 2008, 2009, 2010, 2011, 2012) . . . . . . . . Hitchhiker's Guide to Getting Help at VBForums
Classic VB FAQs (updated Oct 2010) ...Database Development FAQs/Tutorials (updated May 2011)
(includes fixing common VB errors) .......... (includes fixing common DB related errors, and [Classic VB] ADO tutorial /further steps, and [VB.Net] ADO.Net Tutorial).
Tutorial: How to automate Excel from VB6 (or VB5/VBA) .•. SQL 'Select' statement formatter/checker .•. Convert colour number to colour name .•. FlexGrid: fill from recordset .•. FlexGrid: AutoSize columns .•. DB Reserved Words checker
Connection strings .•. MDAC/Jet/ACE downloads .•. SQL Server downloads .•. MZTools (free upgrade for the VB6/VBA Editor)
i hve 1 doubt
like i log in in some site using post/get Now i done successfully Now my problem is i want to visit user profile page after login my id
how can i do tht ?
thnx
If my post was helpful to you, then express your gratitude using Rate this Post.
And if your problem is SOLVED, then please Mark the Thread as RESOLVED (see it in action - video)
My system: AMD Athlon X2 5200+, ASUS Motherboard, 2 GB RAM, 400 GB HDD, Nvidia 8600 GT 512MB, 19.5" TFT(Wide), Creative 5.1 Home Theater
Social Group: VBForums - Developers from India
Skills: PHP, MySQL, jQuery, VB.Net, VB6, Photoshop...
Thankx for demo and code
sorry I`m not so good in English
how can make accept sll
I want try to login to myspace
I don't know if I need cookies store too!?
Thankx for help
hi sir,
i understand vb code. thanks for ur code. i need one help in this section.
how to get this variable in php page?
pls give me sample?
I will post 2 request to same remotehost without winsock.close or winsock.state 8.
First post working, but in second post VB said to me Runtime error 400006, wrong connection state. I was removed "winsock.Close" command in "Private Sub winsock_Close()" and removed/modifyed blnConnected checking.
How to stay connection for using PHP Session id with cookie?
EDIT: RESOLVED, I dont need stay connection. I can use same Session ID with next cookie.
@sallong.27
You must look webpages source code in/near <form> tag. If u want write a tool for using some get/post webpage action, u must learn some basic HTML codes.
Last edited by Ufkabakan; Jun 18th, 2011 at 02:15 AM.
Sorry for my bad english... I hope you can understand me.
![]()
URL Encode function is inadequate for UTF8 sybols/chars like Turkish and Chines and Arabic words. I have a resolution
Example:
ResultCode:Print "ABcdığü !+" Print URLEncode("ABcdığü !+") Print URLEncode2("ABcdığü !+")
General DeclaratetionsCode:ABcdığü !+ ABcd%FD%F0%FC%20%21%2B ABcd%C4%B1%C4%9F%C3%BC%20%21%2B
ModulCode:Private Declare Function WideCharToMultiByte Lib "kernel32" ( _ ByVal CodePage As Long, ByVal dwFlags As Long, _ lpWideCharStr As Any, ByVal cchWideChar As Long, _ lpMultiByteStr As Any, ByVal cchMultiByte As Long, _ ByVal lpDefaultChar As Long, lpUsedDefaultChar As Long) As Long
And i thing we dont need "blnConnected" for checking connection/closed etc. Winsock.state have a state parameter for it:Code:Public Function URLEncode2(ByRef Text As String) As String Dim UTF8Bytes() As Byte Dim lngA As Long, strChar As String For lngA = 1 To Len(Text) strChar = Mid$(Text, lngA, 1) If strChar Like "[A-Za-z0-9]" Then Else If strChar = "=" Then Else W2UTF8 strChar, UTF8Bytes strChar = HexEncode(UTF8Bytes) End If End If URLEncode2 = URLEncode2 & strChar Next lngA End Function Function W2UTF8(W As String, UTF8() As Byte) As Long Dim Bytes& If LenB(W) = 0 Then Exit Function ReDim UTF8(LenB(W) + 16) Bytes = WideCharToMultiByte(65001, 0, ByVal StrPtr(W), Len(W), _ UTF8(0), UBound(UTF8), 0, ByVal 0&) ReDim Preserve UTF8(Bytes - 1) W2UTF8 = Bytes End Function Function HexEncode(B() As Byte) Dim i&, HexArr() As String ReDim HexArr(UBound(B)) For i = 0 To UBound(B) HexArr(i) = Right$("0" & Hex$(B(i)), 2) Next i HexEncode = "%" & Join(HexArr, "%") End Function
WinSock.State = sckClosed = 0
WinSock.State = sckOpen = 1
WinSock.State = sckListening = 2
WinSock.State = sckConnectionPending = 3
WinSock.State = sckResolvingHost = 4
WinSock.State = sckHostResolved = 5
WinSock.State = sckConnecting = 6
WinSock.State = sckConnected = 7
WinSock.State = sckClosing = 8
WinSock.State = sckError = 9
Example:
Waiting Close connection before new connection:
Code:Do Until winsock.State = 0 DoEvents Loop
Sorry for my bad english... I hope you can understand me.
![]()
How can I use to send utf-8 value request to http ?
The php page give me the result of variable I sent as ???
The only easy day was yesterday
@naruponk
Im sory i cant understand, what do u want clearly. This UTF-8 function can URL encoding for unicode strings like UTF-8 Russian or Greak or Turkish words.
Sorry for my bad english... I hope you can understand me.
![]()
Can someone please help me do this exact thing but with multiple urls?? My vb is poor.
Some one can upgrade this code to vb 2010? If yes it will be very helpfull!
If this thread is finished with please mark it "Resolved" by selecting "Mark thread resolved" from the "Thread tools" drop-down menu.
Please consider giving me some rep points if I help you a lot.
DON'T BUMP YOUR POSTS!!! Links to my code examples can now be found on my website: My websites
Please rate my post if you find it helpful!
Technology is a dangerous thing in the hands of an idiot! I am that idiot.
hello!
how to post a username and password via vb then open the url on firefox?
for example
on my vb program
there are username and password textbox
then i enter
when i click the command button ,
it go to the website with my username and password and the url
Hello.
Are you still out there to maybe possibly help me with this? Thanks!
I modified this app a bit to simplify it but I'm getting some errors. When I try the "Send" command button a second time, "Invalid Operation at Current State" error occurs.
I am also having timeout problems sending multiple requests. The service is not recording data sent continuosly, hitting the "send" button. I think it has something to do with Winsock and not the service.
Would someone mind helping me? Thanks!
Option Explicit
' we set this to true whil a connection is established
Private blnConnected As Boolean
Dim Transaction_Num As String
Dim customer As String
Dim Location As String
Dim Weight As String
Dim Sort_Class As String
Dim ppp As Variant
Private Sub cmdSend_Click()
Dim strMethod As String
Dim strData As String
Dim strPostData As String
Dim strHeaders As String
Dim strHTTP As String
Dim X As Integer
Dim tmp As Integer
Dim Transaction_NumInt As Integer
Dim thestring As String
blnConnected = False
strPostData = ""
strHeaders = ""
If blnConnected Then Exit Sub
'"GET
'For all loads: http://ics.etechsystems.com:3000/col..._loads_on_belt (test) or http://192.168.0.21:3000/colmac/current_loads_on_belt (on site)
'To query a single load: http:// ics.etechsystems.com:3000/colmac/get_load/x (test) or http:// 192.168.0.21:3000/colmac/get_load/x (on site)
'For this service the x should be replaced with the tranaction_number you would like to find.
' txtUrl.Text = "http://ics.etechsystems.com:3000/colmac/current_loads_on_belt"
' txtUrl.Text = "http://ics.etechsystems.com:3000/colmac/get_load/1"
'POST
'For posting a load during a Colmac dump on belt: http://ics.etechsystems.com:3000/colmac/new_load on site: http://192.168.0.21:3000/colmac/new_load
' configure winsock
winsock.Protocol = sckTCPProtocol
winsock.RemoteHost = "ics.etechsystems.com"
winsock.RemotePort = 3000
strMethod = "POST"
' build encoded data the data is url encoded in the form
strData = ""
strHTTP = strMethod & " " & "/colmac/new_load" & " HTTP/1.1" & vbCrLf
strHTTP = strHTTP & "Host: " & "ics.etechsystems.com" & vbCrLf
Transaction_Num = 304
Transaction_NumInt = Val(Transaction_Num)
Transaction_Num = str(Transaction_NumInt)
customer = "5"
Location = "2"
Weight = "3"
Sort_Class = "4"
'- See above: Entered the URL http://ics.etechsystems.com:3000/colmac/new_load
strPostData = strPostData & "<new_load>" & vbCrLf
strPostData = strPostData & "<transaction_number>" & Transaction_Num & "</transaction_number>" & vbCrLf
strPostData = strPostData & "<customer>" & customer & "</customer>" & vbCrLf
strPostData = strPostData & "<location>" & Location & "</location>" & vbCrLf
strPostData = strPostData & "<weight>" & Weight & "</weight>" & vbCrLf
strPostData = strPostData & "<sort_class>" & Sort_Class & "</sort_class>" & vbCrLf
strPostData = strPostData & "</new_load>" & vbCrLf
strHeaders = "Content-Type:text/xml" & vbCrLf & _
"Content-Length:" & Len(strPostData) & vbCrLf
strHTTP = strHTTP & strHeaders
strHTTP = strHTTP & vbCrLf
strHTTP = strHTTP & strPostData
txtRequest.Text = strHTTP
winsock.Connect
' wait for a connection
While Not blnConnected
DoEvents
Wend
' send the HTTP request
winsock.SendData strHTTP
thestring = "C:\Program Files\Internet Explorer\IEXPLORE.EXE http://ics.etechsystems.com:3000/colmac/get_load/" + Transaction_Num
Shell thestring
txtResponse = "Transaction Number: " + Transaction_Num
Transaction_Num = str(Transaction_NumInt + 1)
End Sub
Sub winsock_Connect()
blnConnected = True
End Sub
help me
i wont to mack my forum poster in vb6 with winsock tool.
i login the vb forum with this code
Code:Private Sub CommandLogin_Click() Dim Packet As String Dim Post As String Post = "vb_login_username=" & Txtuser & "&vb_login_password=" & Txtpass & "&s=&securitytoken=guest&do=login" Packet = "POST /login.php?do=login HTTP/1.1" & vbNewLine Packet = Packet & "Host: www.absba.org" & vbNewLine Packet = Packet & "User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:16.0) Gecko/20100101 Firefox/16.0" & vbNewLine Packet = Packet & "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" & vbNewLine Packet = Packet & "Accept-Language: ar,en-us;q=0.7,en;q=0.3" & vbNewLine Packet = Packet & "Connection: keep -alive" & vbNewLine Packet = Packet & "Content-Type: application/x-www-form-urlencoded" & vbNewLine Packet = Packet & "Content-Length: " & Len(Post) & vbNewLine & vbNewLine & Post If Winsock.State = 7 Then Winsock.SendData (Packet) End Sub
but i cant post my Thread by this code
thes is the code of http headerrs..Code:Private Sub CommandNewThread_Click() Dim Packet As String Dim Post As String Post = "subject=" & Text1 & "&message=" & Text2 & "&wysiwyg=1&iconid=0&f=29&do=postthread&posthash=&poststarttime=&loggedinuser=1026648&sbutton=&parseurl=1&emailupdate=1" Packet = "POST /newthread.php?do=postthread&f=2 HTTP/1.1" & vbNewLine Packet = Packet & "Host: www.absba.org" & vbNewLine Packet = Packet & "User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:16.0) Gecko/20100101 Firefox/16.0" & vbNewLine Packet = Packet & "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" & vbNewLine Packet = Packet & "Accept-Language: ar,en-us;q=0.7,en;q=0.3" & vbNewLine Packet = Packet & "Connection: keep -alive" & vbNewLine Packet = Packet & "Content-Type: application/x-www-form-urlencoded" & vbNewLine Packet = Packet & "Content-Length: " & Len(Post) & vbNewLine & vbNewLine & Post If Winsock.State = 7 Then Winsock.SendData (Packet)
this is the urlCode:http://www.absba.org/newthread.php?do=postthread&f=29 POST /newthread.php?do=postthread&f=29 HTTP/1.1 Host: www.absba.org User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:16.0) Gecko/20100101 Firefox/16.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: ar,en-us;q=0.7,en;q=0.3 Accept-Encoding: gzip, deflate Connection: keep-alive Referer: http://www.absba.org/newthread.php?do=newthread&f=29 Cookie: bbsessionhash=U-MUbRgiFfdH8CrOlwP67lq8GJKqM3Igc3oDs41kOa8aj4L2gWVKP6yX55dmVNYC; bblastvisit=8dzKEZexLzFgjulJQXO19QSy8xlkBYQ1bsbsuTIiuL0.; bblastactivity=74eMV7PnXeHIAPCBvldA_77lSqVIMSJZ18_d8uexO6M.; __utma=208997954.766644000.1327287630.1327287630.1327287630.1; __utmb=208997954.38.9.1327289126285; __utmc=208997954; __utmz=208997954.1327287630.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); bbforum_view=31_pQ9K5OkHVqpcq_zo8DPYvSjON3yJtS4cq7vlvPh9a-EH1BAmRpPglx5HoPV4KvZo1jbIs0k8L17X2oTEYV4HVb46vM4t2eg-SaFPoEQQ.; bbthread_lastview=tXnsL_aOuY40KNzY0xiOHDG35S0hJQuFQv-XiI1XgBVW0h3NcbP2FwFUDSfvqXtbBIsnOrJpwh7_sRJpF_wHuUWfHDA02Hi0olO9oFk_YPQGzQTtXo_LJRGQtBzCclD2 Content-Type: application/x-www-form-urlencoded Content-Length: 278 subject=test1&message=test2%3Cbr%3E&wysiwyg=1&iconid=0&s=&securitytoken=1351778534-c987b6ae1f3b93bd32c000d06b175a34ce3972e6&f=29&do=postthread&posthash=&poststarttime=&loggedinuser=1026648&sbutton=%C7%DA%CA%E3%CF+%C7%E1%E3%E6%D6%E6%DA+%C7%E1%CC%CF%ED%CF&parseurl=1&emailupdate=1
http://www.absba.org/newthread.php?do=postthread&f=29
Please help me with a simple code...
Please help me with a simple code...
Please help me with a simple code...![]()