Proxy-Server / VB
kaepten
- programmiertechnik
0 Stefan Falz0 kaepten0 Stefan Falz0 Stefan Falz0 kaepten
Hallo zusammen
Ist zwar ganz leicht Off-Topic, aber Anregungen und Meinungen helfen mir bestimmt weiter.
Ich möchte ein Internet-Steuerelement mit VisualBasic programmieren. Das klapp auch: der Funktion "Navigate" gebe ich einfach die URL. So geht das auch mit anderen Steuerelementen die FTP Transfer ermöglichen. Ich finde aber nirgends in meinen VisualBasic Bücher, wie ich durch einen Vorhandenen Proxy komme. Wenn ich also ein FTP Client machen möchte, wie kann ich Presets für Username und Passwort erfassen bzw. wo muss ich die wie übermitteln?
Oder anders gefragt: Auf welcher "Ebene" findet die Authorisierung eines Benutzers beim Proxyserver statt?
Das kann bestimmt nicht sehr kompliziert sein :-)
Für Hinweise wo ich weitersuchen muss bin ich dankbar!
cheers
kaepten
Ich möchte ein Internet-Steuerelement mit VisualBasic programmieren. Das klapp auch: der Funktion "Navigate" gebe ich einfach die URL. So geht das auch mit anderen Steuerelementen die FTP Transfer ermöglichen. Ich finde aber nirgends in meinen VisualBasic Bücher, wie ich durch einen Vorhandenen Proxy komme. Wenn ich also ein FTP Client machen möchte, wie kann ich Presets für Username und Passwort erfassen bzw. wo muss ich die wie übermitteln?
Oder anders gefragt: Auf welcher "Ebene" findet die Authorisierung eines Benutzers beim Proxyserver statt?
Hallo,
welches Steuerelement nutzt du denn für deine Anwendung.
WebBrowser (IE), InternetTransferControl, WinSock, ...
Je nach Steuerelement muss die Angabe eines Proxys anders erfolgen.
Wenn du FTP mit dem Steuerelement realisieren willst, bleibt dir nur
der Weg über API's, da das normale "InternetTransfer-Steuerelement" nicht mit PassiveMode (meistens bei FTP-Servern hinter einer Firewall) umgehen kann.
Funktionen für dein Problem findest Du im MSDN unter den Stichworten:
InternetConnect
InternetOpen
FtpGetFile
FtpPutFile
Tschau, Stefan
Hoi Stefan
Danke für Deine Antwort, Du scheinst Dich auszukennen. Da frag ich Dich doch gleich weiter :-)
welches Steuerelement nutzt du denn für deine Anwendung.
WebBrowser (IE), InternetTransferControl, WinSock, ...
Je nach Steuerelement muss die Angabe eines Proxys anders erfolgen.
Wenn du FTP mit dem Steuerelement realisieren willst, bleibt dir nur
der Weg über API's, da das normale "InternetTransfer-Steuerelement" nicht mit PassiveMode (meistens bei FTP-Servern hinter einer Firewall) umgehen kann.
Ich weiss eben noch nicht genau welches von all denen ich benutzen muss. Mein geplantes unterfangen: Ich möchte gerne den Quelltext einer URL/HTML-Seite bekommen (beispielsweise um in einem TextControl anzuzeigen). Ich glaube, da müsste ich über das InternetTransferControl gehen, also auch die API Funktionen nutzen?
kaepten
PS: Keine Angst, ich will keine Quellcodes klauen, für all die, welche den Klau mit Versuchen wie linken Mausklick unterbinden etc... verhindern versuchen :-))
Hoi Stefan
Danke für Deine Antwort, Du scheinst Dich auszukennen. Da frag ich Dich doch gleich weiter :-)
welches Steuerelement nutzt du denn für deine Anwendung.
WebBrowser (IE), InternetTransferControl, WinSock, ...
Je nach Steuerelement muss die Angabe eines Proxys anders erfolgen.
Wenn du FTP mit dem Steuerelement realisieren willst, bleibt dir nur
der Weg über API's, da das normale "InternetTransfer-Steuerelement" nicht mit PassiveMode (meistens bei FTP-Servern hinter einer Firewall) umgehen kann.Ich weiss eben noch nicht genau welches von all denen ich benutzen muss. Mein geplantes unterfangen: Ich möchte gerne den Quelltext einer URL/HTML-Seite bekommen (beispielsweise um in einem TextControl anzuzeigen). Ich glaube, da müsste ich über das InternetTransferControl gehen, also auch die API Funktionen nutzen?
kaepten
PS: Keine Angst, ich will keine Quellcodes klauen, für all die, welche den Klau mit Versuchen wie linken Mausklick unterbinden etc... verhindern versuchen :-))
Hallo,
Mein geplantes unterfangen: Ich möchte gerne den Quelltext einer
URL/HTML-Seite bekommen (beispielsweise um in einem TextControl
anzuzeigen).
für solche Zwecke kann man auch das InternetTransfer-Steuerelement nutzen.
Allerdings kann es Probleme beim Laden von Dateien geben, die auf dem Max erstellt wurden, bzw. Binär per FTP hochgeladen wurden. Du musst
die Files binär empfangen und danach in Ascii umwandeln.
Auf meiner Site gibt es so ein Tool (GetHTML), das fremde Sites abzieht,
Teile des Quellcodes (frei bestimmbar) filtert, src-Tags, ... anpasst,
dem eigenen Layout, (Schriftart, ...) angleicht und den konvertierten
Text wieder ausgibt.
Allerdings sollte man hierbei immer beachten, daß man den Urheber
der Quellseite natürlich um Erlaubnis fragen sollte, bevor man sich
dessen Seiten zu eigen macht. Denn anders als in Frames sieht hier der
Besucher absolut nicht mehr, daß dieser Text von einer anderen Seite kommt.
Es eignet sich aber hervorragend für Seiten, die z.B.: tagesaktuelle News wie Wetter, Verkehrsmitteilungen, ... anzeigen möchten.
Wenn es dir lediglich um das Anzeigen des Quellcodes in einer Anwendung
geht, reicht auch folgendes Konstrukt:
In deiner Anwendung hast Du:
Form1
txtHTML (mehrzeiliges Textfeld)
txtURL (einzeiliges Textfeld)
und
cmdGetFile (Button)
Dann noch das Steuerelement (Microsoft Internet Transfer Steuerelement)
über die Komponenten in die Form gezogen -> Ausführen -> Fertig.
Der Code für, der beim Klicken des Buttons ausgeführt wird ist folgender:
Private Sub cmdGetFile_Click()
txtHTML = Inet1.OpenURL(txtURL)
End Sub
Tschau, Stefan
Private Sub cmdGetFile_Click()
txtHTML = Inet1.OpenURL(txtURL)
End Sub
Hallo,
ganz vergessen, da gibst noch einen Bug im ITC.
Private Sub cmdGetFile_Click()
Inet1.URL = txtURL
txtHTML = Inet1.OpenURL
End Sub
so sollte es gehen.
Tschau, Stefan
Hi Stefan
Also das mit dem Quelltext hat einen ähnlichen Hintergrund: Ich möchte ein CGI-Script starten und dann das Resultat nach dem gewünschten Content durchparsen. Diesen Inhalt möchte ich aber nicht als HTML Seite anzeigen, sondern in einer TextBox. Insofern interessiert mich das HTML gar nicht, sondern das Resultat, das im HTML eingebettet ist.
Private Sub cmdGetFile_Click()
Inet1.URL = txtURL
txtHTML = Inet1.OpenURL
End Sub
Dann kannst Du mir sicher auch gerade noch sagen, wo ich nun genau diese API einbauen muss, für den Fall, dass ich noch durch einen Proxy-Server Hindurch muss... Das müsste dann ja irgenwie dieses OpenURL ersetzen oder?
Vielen Dank! Ich schick dir dann eine Version meines geheimheimheim-Softwareproduktes ;-)
cheers
kaepten
Private Sub cmdGetFile_Click()
Inet1.URL = txtURL
txtHTML = Inet1.OpenURL
End SubDann kannst Du mir sicher auch gerade noch sagen, wo ich nun genau diese API einbauen muss, für den Fall, dass ich noch durch einen Proxy-Server Hindurch muss... Das müsste dann ja irgenwie dieses OpenURL ersetzen oder?
Vielen Dank! Ich schick dir dann eine Version meines geheimheimheim-Softwareproduktes ;-)
Hallo,
um den Proxy zu benutzen, musst Du folgendes eingeben:
Inet1.AccessType = icNamedProxy
'Inet1.Proxy = "ftp=FTPProxy:80 HTTP=HTTPProxy:80"
Inet1.Proxy = "STDProxy:80"
der Rest muss hintendran stehen.
Tschau, Stefan
P.S.: Ich freu mich schon auf die "geheime" Software.