teckV Posted April 26, 2006 at 11:28 AM Report #24400 Posted April 26, 2006 at 11:28 AM há uma api GNU para dotNet feita em c# (mas como é obvio podem usar em qualquer linguagem) que ainda não explorei bem mas parece ser muito fixe para criar app´s com recurso a ligações por proxy.. como sabem é preciso adaptar as app´s para tirarem partido da tecno sockets... criem os vossos programas com funcionalidades de proxy FTP part of the library uses SocketEx class for the low level network access. This class can be easily configured to access remote host through the intermediate (proxy). Here is a list of the supported proxies: Socks4, Socks4a, Socks5 and Web proxy (HTTP CONNECT method). This class can be found in the BytesRoad.Net.Sockets.dll assembly. http://www.bytesroad.com/NetSuit/ master of realm - xor/nor but and
Bastos Posted April 26, 2006 at 02:50 PM Report #24427 Posted April 26, 2006 at 02:50 PM nda q n seja já possivel sem addons, plugins ou 3rd party software... 😛 mas podias por um exemplo, pra se verificar as diferenças... assim cada um pode tirar as suas conclusoes... 😄
teckV Posted April 26, 2006 at 04:21 PM Author Report #24437 Posted April 26, 2006 at 04:21 PM isto refere-se a incluir funcionalidades de proxy em aplicações custom... não sei se tinhas percebido dessa forma... e claro..podes sempre fazer as coisas sem utilizar API que encapsulam as tarefas mais "baixo nivel" é uma opção... e assim todo o trabalho de "gestão" das questões qie envolvem proxies ficam resolvidas... o que não acontece se não recorreres a estas API´s de "alto nivel" se fizeres o download e veres os exemplos vais perceber melhor... é que muitas vezes o ppl percepita-se a querer marcar posição e depois... :bored: exemplo: private void btnRequest_Click(object sender, System.EventArgs e) { SocketEx sock = null; try { Uri reqUri = new Uri(txtURL.Text); string host = reqUri.Host; int port = reqUri.Port; string path = reqUri.PathAndQuery; sock = new SocketEx(_proxyType, _proxyServer, _proxyPort, _proxyUser, _proxyPwd); //configure preauthenticate sock.PreAuthenticate = _preAuthenticate; sock.Connect(host, port); string cmd = "GET " + path + " HTTP/1.0\r\n" + "Host: " + host + "\r\n\r\n"; sock.Send(_usedEnc.GetBytes(cmd)); //simple reading loop //read while have the data try { byte[] data = new byte[32*1024]; while(true) { int dataLen = sock.Receive(data); if(0 == dataLen) break; txtRes.Text += _usedEnc.GetString(data, 0, dataLen); } } catch(Exception ex) { txtRes.Text += Environment.NewLine + ex.ToString(); } } catch(Exception ex) { MessageBox.Show(ex.Message, "Exception caught!"); } if(null != sock) sock.Close(); } the end
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now