Delphi-Quellcode:
function GetConnectionString(
handle : THandle; ADOConnection : TADOConnection; sConnection :
String = '
') : Boolean;
begin
ADOConnection.Connected := False;
// Hier wird der Dialog zum Aufbau des ConnectionString aufgerufen,
// analog zu dem Aufbau per ObjektInspektor in der IDE.
ADOConnection.ConnectionString := PromptDataSource(
handle,sConnection);
ADOConnection.Connected := True;
Result := ADOConnection.Connected;
end;
ADOConnection wird der Funktion doch als Parameter übergeben. Da muss was anderes im Argen liegen, so dass da ein Fehler auftritt. Dabei sollte es vollkommen egal sein, wie die ADOConnection im übrigen Programmteil, im Formular oder sonstwo benannt wurde.
Die Funktion könnte man auch in 'ne beliebige
Unit auslagern und dann aus dem Formular aufrufen.
Habe mein Programm, aus dem die Funktion "geklaut" wurde, gerade noch mal kompiliert. Bei meinem ollen Delphi 7 funktioniert das anstandslos.