Hallo,
ich stelle mit Hilfe einer Ras-Funktion eine Internetverbindung her. Nun ist es aber so, dass manchmal, aus welchen Gründen auch immer, keine Verbindung hergestellt werden kann. Dies merke ich daran, dass ich lange Zeit, etwa 20 Sekunden, warten muss. Nun weiss ich aber aus Erfahrung, dass, wenn schon nach 5 Sekunden keine Verbindung besteht, ich die Aktion abbrechen könnte, ich aber nicht weiss wie.
Hier ist mein Code zum Aufbau der Verbindung:
Delphi-Quellcode:
{--[Dial]----------------------------------------------------------------------}
function Dial(Entry: String): Boolean;
var
RasDialParams : TRasDialParams;
Connection : DWORD;
begin
RasHangUp(Main.ConnectionID); // Main-ConnectionID ist die Verbindungs-ID
FillChar(RasDialParams, SizeOf(RasDialParams), 0);
RasDialParams.dwSize := SizeOf(RasDialParams);
StrPCopy(RasDialParams.szEntryName, Entry);
StrPCopy(RasDialParams.szUserName, '*****');
StrPCopy(RasDialParams.szPassword, '*****');
Main.ConnectionID := 0;
Connection := RasDial(nil, nil, RasDialParams, 0, nil, Main.ConnectionID); // hier wird Verbingung aufgebaut
If Connection = 0 then Result := True
Else
begin
RasHangUp(Main.ConnectionID);
Result := False;
end;
end;
Nun habe ich schon versucht mit RasHangUp(Main.ConnectionID); während der Aktion den Aufbau zu unterbrechen, war aber nur aus Hilflosigkeit geschehen, da ich keinen anderen Weg weiss. Darum hoffe ich, jemand hier zu finden, der mir einen Rat geben könnte.
Gruß
Mazel