![]() |
Internetverbindungen anzeigen und wählen
Hallo DP'ler,
wie kann ich meine Intenetverbindungen in einer Combobox einfach auflisten und dann eine dieser Verbindungen wählen? Da ich nicht nur eine habe würde ich mir einen kleinen Manager basteln der mir zu bestimmen Zeiten einer der Verbindungen als obersten Eintrag in der Combobox anzeigt und diesen auch nach einem Klick auf ein OK-Button wählt. Gruß Mazel |
Re: Internetverbindungen anzeigen und wählen
Nach langem suchen habe ich nun etwas gefunden um die Verbindungen anzuzeigen. Auf dsdt.info gibts auch ein Code zum Verbinden aber leider geht das nur mit Modem. Wie kann ich nun die Verbindung auch mit ISDN ermöglichen?
Delphi-Quellcode:
uses
ras; //eigen ras erstellt für diese Funktion procedure TForm1.FormCreate(Sender: TObject); var RasEntryName: array[1..20] of TRasEntryName; i, x, BufSize, Entries: DWord; Connection:THRasConn; begin RasEntryName[1].dwSize := SizeOf(RasEntryName[1]); BufSize := SizeOf(RasEntryName); x := RasEnumEntries(nil, nil, @RasEntryName, BufSize, Entries); for i := 1 to Entries do begin if ( i < 21) and (RasEntryName[i].szEntryName[0] <> #0) then ListBox1.Items.Add(StrPas(RasEntryName[i].szEntryName)); end; end; procedure TForm1.Button1Click(Sender: TObject); var ErrorCode: Integer; begin Con := 0; ErrorCode := ERROR_SUCCESS; if DialDFUE(ListBox1.Items[0], ErrorCode, Con) then ShowMessage('Verbindung'); //zum Test 1. Eintrag end; procedure TForm1.Button2Click(Sender: TObject); begin InternetHangUp(Con, 0); end;
Delphi-Quellcode:
Weist jemand wie ich eine Verbinding auch über ISDN einwählen kann?
unit Ras;
interface uses Windows; const MaxEntryName = 256; raslib = 'rasapi32.dll'; type PHRasConn = ^THRasConn; THRasConn = THandle; PRasEntryName = ^TRasEntryName; TRasEntryName = record dwSize: DWORD; szEntryName: packed array[0..MaxEntryName] of AnsiChar; dwFlags: DWORD; szPhonebookPath: packed array[0..MAX_PATH] of AnsiChar; end; function RasEnumEntries(reserved: PChar; lpszPhonebook: PChar; lprasentryname: PRasEntryName; var lpcb: DWORD; var lpcEntries: DWORD): DWORD; stdcall; implementation function RasEnumEntries; external raslib name 'RasEnumEntriesA'; end. |
Re: Internetverbindungen anzeigen und wählen
Soltle mit ISDN und DSL genauso gehen, falls du dich über ein ISDN-Modem einwählst. Die meisten Zugangsprogramme installieren einen entsprechenden treiber.
|
Re: Internetverbindungen anzeigen und wählen
anzeigen kann man mit Komponente JvRas32 von Jedi auf dem Registerblatt Internet so:
Delphi-Quellcode:
und verbinden geht dann mit folgender Funktion:
combobox1.Items := jvras321.PhoneBook;
Delphi-Quellcode:
aufgerufen z.b. mit folgendem aufruf:
//Hier ist eine Funktion zum verbinden der Internetverbindung
uses WinInet; function DialDFUE(DFUEName: string; var ErrorCode: integer; var ConId: DWord): boolean; var ConNum: LPDWORD; ReturnCode: DWord; begin result := false; ErrorCode := 0; New(ConNum); try ReturnCode := InternetDial(Application.Handle, PChar(DFUEName), INTERNET_AUTODIAL_FORCE_UNATTENDED, ConNum, 0); ErrorCode := ReturnCode; if ReturnCode = ERROR_SUCCESS then begin result := true; ConId := ConNum^; end; finally Dispose(ConNum); end; end;
Delphi-Quellcode:
con ist eine Variable vom Typ Cardenal
if DialDFUE(form3.Edit4.Text, i, con) = false then
begin MessageDlg('Die DFÜ Verbindung konnte nicht aufgebaut werden.', mterror, [mbok], 0); exit; end; ![]() Mir ist gerade aufgefallen dass du die wohl selber gefunden hast.. also bei mir funzt die auch mit dsl.. glaube zumindest dass es dsl war.. ist schon lange her dass ich das prog das letzte mal benutzt habe, da ist jetzt per router surfe. MFG Magier |
Re: Internetverbindungen anzeigen und wählen
Ich danke euch für die Antworten, aus irgend einem Grund funktioniert es jetzt. Ich habe heute, nachdem ich aus der Schule kam, sofort einen Test durchgeführt in dem ich einfach neukompiliert habe und plötzlich ging es. Kann das einer erklären? Ich denke auch den Rechner mal neugestartet zu haben, kann ich jetzt aber nicht mehr mit Sicherheit sagen. Soll es daran gelegen haben?
Nagut, auf jeden Fall funktioniert es jetzt, was, denke ich, die Hauptsache ist. :) Nochmal danke an all. [EDIT] Ich habe eben festgestellt, dass es doch nicht an dem Neustart liegt, denn eben wollte ich es wieder versuchen aber es ging nicht, es kam die meldung das er eine Verbindung hat aber nichts ist passiert. Daruafhin habe ich manuell eine verbindung hergestellt und diese wieder getrennt, danach gings auch wieder mit meinem Prog. Es scheint also was mit den ConID zu tun zu haben. [/EDIT] Gruß Mazel |
Re: Internetverbindungen anzeigen und wählen
Hat jemand eine Idee, warum manchmal eine Verbindung hergestellt wird und warum manchmal nicht obwohl die Funktion True, für Verbindung hergestellt, zurückgibt?
Gruß Mazel |
Re: Internetverbindungen anzeigen und wählen
Das Thema hat sich erledigt. Ich habe mich durch die ras Unit durchgearbeitet und die wichtigen Funktionen für mich extrahiert.
Nun funktioniert alles bestens. :thumb: Grüßle Mazel |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz