Schau doch einmal nach, ob nicht hier bereits der Default-Wert als Result zurückgeliefert wird.
Dann würde folgendes nicht passieren:
Trotzdem wurde zuerst versucht, sich mit der 12.345.678.910 zu verbinden und
danach mit der
IP aus der ini...
Die
IP, die in der ersten Connect-Zeile steht, ist zweifellos diejenige
IP, die von der
Function GetIPfromINI(cFile:string):string;
zurückgeliefert wird.
Delphi-Quellcode:
IP := GetIPfromINI('
NAT_IP.ini');
// ZUWEISUNG AUS DER FUNCTION AN IP
DM.AdoConnection1.CLOSE;
DM.ADOCon__DWH.Close;
try
Memo1.Lines.Append('
try connect to IP: ' +
IP);
Memo1.Lines.Append('
');
DM.AdoConnection1.ConnectionString := Format(ConnString,[UserName, PassWord,
IP]);
// ÜBERNAHME DES STRINGS AUS IP
DM.AdoConnection1.Open;
Weshalb also sollte es nicht passieren können, daß zuerst mit der Default-
IP verbunden wird? Denn schließlich wird in
Result := ini.ReadString('connection', 'IP', '12.345.678.910');
genau diese Default-
IP angegeben, falls eine der Fehlerbedingungen von
TIniFile.ReadString
zutrifft. Und genau diese Fehlerbedingung könnte eintreffen, ja ist sogar sehr wahrscheinlich, denn sonst stünde in der Variablen
IP ja eine andere
IP-Adresse als der Defaultwert.