Thema: Delphi Kompatibilität

Einzelnen Beitrag anzeigen

jensw_2000
(Gast)

n/a Beiträge
 
#3

Re: Kompatibilität

  Alt 6. Jan 2005, 21:47
Ein paar zusätzliche Infos wären nicht schlecht.

- schreibst den registry key mit dem connectionstring wärend des setups un die registry oder machst du das, wie ich es vermute, im onCreate deiner Mainform ?

Wenn das so ist, schau dir mal an wir ich das gemacht habe ...

//TAdoConnection.WillConnect(...);

Delphi-Quellcode:
Procedure TData.connWillConnect(Connection: TADOConnection;
  var ConnectionString, UserID, Password: WideString;
  var ConnectOptions: TConnectOption; var EventStatus: TEventStatus);

var reg:tregistry;
begin

  reg:=Tregistry.Create;
  try
    try
      reg.RootKey:=HKEY_LOCAL_MACHINE;
      reg.OpenKey('\Software\ESS\DaxoKal',true);
      if reg.ValueExists('DBDir') then DataPath:=reg.ReadString('DBDir') else Datapath:=Programmpfad;
      if reg.ValueExists('altDBDir') then altDataPath:=reg.ReadString('altDBDir') else altDatapath:=Programmpfad;
    finally
      reg.Free;
    end;
  except
  end;

  if Fileexists(Datapath+'\data.mdb') then
  begin
    if connectionstring<>DataPath+'\data.mdbthen Connectionstring:=DataPath+'\data.mdb';
    main.DBLabel.Caption:='Datenbank: '+Connectionstring;
  end
  else begin
    if Fileexists(altDatapath+'\data.mdb') then
    begin
      if connectionstring<>altDataPath+'\data.mdbthen Connectionstring:=altDataPath+'\data.mdb';
      main.DBLabel.Caption:='Datenbank: '+Connectionstring;
    end
    else begin
      Showmessage('DaxoKal konnte keine Verbindung zu der Primären und Alternativen Datenbank herstellen.'+#13#10+
                  'Bitte Überprüfen Sie Ihre Installation und die Zugriffsrechte auf die Datenbankverzeichnisse.'+#13#10+
                  'Primäre Datenbank : '+Datapath+'\data.mdb'+#13#10+
                  'Alternative Datenbank : '+altDatapath+'\data.mdb'
                  );
      Abort;
    end;
  end;


end;
[edit=Christian Seehase]Code-Tags durch Delphi-Tags ersetzt. Mfg, Christian Seehase[/edit]
  Mit Zitat antworten Zitat