A new Delphi version (10.3 Rio) was released recently and again there’s no Advantage Database Server component kit available. So it’s time to do it again. As already described here and here, you just need to edit versions.inc.
The new compiler version is 330:

{$IFDEF VER330}
   {$DEFINE ADSDELPHIRIO}
{$ENDIF}

//...

{$DEFINE ADSDELPHIRIO_OR_NEWER}
{$IFNDEF ADSDELPHIRIO}

This version of Delphi/C++Builder is not yet supported!

{$ENDIF}

Make a copy of \program files (x86)\Advantage 12.0\TDataset\DelphiXE10.1, name it DelphiXE10.3. Then replace all occurences of version.inc of that folder with the edited one.
Launch Delphi/RadStudio as Administrator, open the runtime package, save it as adsdxe10RioStudio and build. Then open the design time package, save it as adsdxe10RioDStudio, remove adsdxe10TokyoStudio.dcp from the requires part and replace it with adsdxe10RioStudio.dcp. Build the project and install the components. That’s it!

ADS and Delphi 10.3 Rio
Markiert in:             

32 Kommentare zu „ADS and Delphi 10.3 Rio

  • 5. Dezember 2018 um 17:03 Uhr
    Permalink

    Ich habs mir fast gedacht… so kann denn das tote Pferd noch eine Weile geritten werden.

    Antworten
  • 5. Februar 2019 um 22:03 Uhr
    Permalink

    I’ve tried this many times, everything is fine until the very last click on „Install“. I get a

    dcc32 Error E2466 Never-build package ‚.adsdxe10Riodstudio‘ requires always-build package adsdxe10Riostudio‘

    I’ve tried using a different folder, using the original projects without renaming them, and I also get this error when trying to install:

    Can’t load package C:\Users\Public\Documents\Embarcadero\Studio\20.0\bpl\adsdxe10Riostudio.bpl. The Specified module could not be found.

    That file does exist, with the time/date that is just a minute old. In my path I have

    c:\Program Files\Embarcadero\Studio\20.0\bin
    c:\Program Files\Embarcadero\Studio\20.0\bpl
    c:\Program Files\Embarcadero\Studio\20.0\dcp
    c:\Program files\Advantage 12.0\TDataSet\Rio\Win32
    c:\Program files\Advantage 12.0\TDataSet\Rio\Win32\Source

    Antworten
    • 5. Februar 2019 um 22:12 Uhr
      Permalink

      Doug,
      for the examples I changed the output directory to ./

      Antworten
      • 5. Februar 2019 um 22:35 Uhr
        Permalink

        I tried changing the DCP output directory to ./ and the package output to ./ I did this for both projects.

        I get the same error but in the local folder

        Can’t load package c:\Program files\Advantage 12.0\TDataSet\Rio\Win32\Source. The Specified module could not be found.

        I really appreciate your help!!!

        Antworten
  • 6. Februar 2019 um 16:23 Uhr
    Permalink

    Did you copy the (correct) client engine DLLS to the Windows system (syswow64) folder?

    Antworten
  • 7. Februar 2019 um 0:10 Uhr
    Permalink

    My main PC has C++ Builder, so I cannot compile the Advantage source code. So I ZIPPED the files from the Delphi PC, the entire \Program Files\Advantage 12.0 folder, then unzipped onto my C++ Builder PC. I searched \Windows for all of the required DLL’s and the AdsAdditionalDesigners.dll and made sure there was 1 copy of each and that they were all version 12.0. The file aicu32.dll was installed in the ARC and SERVER folders, as well as REDISTRIBUTE folder and the file in REDISTRIBUTE was 64 bytes smaller than the other 2 files. I used the file in the REDISTRIBUTE folder. I then tried to „Install Packages“. It failed, saying it could not find a file. I copied the two .BPL files (adsdxe10RioStudio.bpl and adsdxe10RiodStudio.bpl) to \Program files (x86)\Embarcadero\Studio\20.0\bin. I then tried „Install Packages“, and browsed to the \Program files (x86)\Embarcadero\Studio\20.0\bin folder and installed adsdxe10RiodStudio.bpl successfully. I think the .BPL files need to be in the Windows PATH.

    The reason I needed to install 12.0 was because after I installed Rio I have a table that has a MONEY field type shows a random value if the field is null. I thought my 11.10 Advantage installation was corrupt or had mismatched DLL’s since I have had so many versions of Advantage over the years. After installing 12.0 and building that project I have the same issue. A picture of the issue is here http://www.douglashay.com/tracks/advantage1.JPG

    Antworten
  • 27. Mai 2020 um 1:46 Uhr
    Permalink

    Ads running in Delphi 10.4
    Add
    $IFDEF VER340}
    {$DEFINE ADSDELPHIRIO}
    {$ENDIF}

    Antworten
    • 27. Mai 2020 um 8:40 Uhr
      Permalink

      you should use a different name…10.4 is Sydney, not Rio.

      Antworten
  • 14. Februar 2021 um 14:01 Uhr
    Permalink

    Funktioniert das mit der Delphi 10.3 Community Edit oder muss es eine Professional-Version sein?

    Antworten
    • 14. Februar 2021 um 15:10 Uhr
      Permalink

      community reicht.

      Antworten
      • 14. Februar 2021 um 15:28 Uhr
        Permalink

        Leider klappt das bei mir nicht. Ich habe ADS 12 installiert und die HDD-Struktur C:\Program Files (x86)\Advantage 12.0\TDataset\DelphiXE10.3\win32\Source. Source habe ich aus C:\Program Files (x86)\Advantage 12.0\TDataset\Source. Darin habe ich die versions.inc angepasst. In Delphi wird es nicht unter Komponente/Packages installieren angezeigt. Wie kann ich das Runtime-Packege öffnen?

        Antworten
        • 14. Februar 2021 um 16:53 Uhr
          Permalink

          Delphi als Admin gestartet? Muss evtl sein wg Program files

          Antworten
  • 14. Februar 2021 um 16:58 Uhr
    Permalink

    Ja, habe ich als Admin probiert, geht nicht.

    Antworten
  • 15. Februar 2021 um 10:10 Uhr
    Permalink

    Können Sie mir helfen, das Problem einzukreisen? Wie erkennt Delphi, dass ADS installiert ist?

    Antworten
    • 15. Februar 2021 um 14:52 Uhr
      Permalink

      an welchem Schritt genau gibt es einen Fehler?

      Antworten
      • 15. Februar 2021 um 15:48 Uhr
        Permalink

        Bei dem Versuch die Komponenten in Delphi einzubinden. Eigentlich müsste es doch nach erfolgreicher Installation bei Delphi unter „Komponente/Packages installieren“ angezeigt werden, wird es aber nicht.

        Antworten
        • 15. Februar 2021 um 15:53 Uhr
          Permalink

          also zusammengefasst:
          – Runtime Package compilieren hat geklappt.
          – Designtime Package compilieren hat geklappt.
          – rechte Maustaste in der IDE auf das Designtime-Package und dann installieren klappt nicht?

          Antworten
        • 15. Februar 2021 um 16:41 Uhr
          Permalink

          Ich mache den Udemy-Kurs von André Schaberick und versuche mit Delphi 10.3 das ADS zu benutzen. Dort ist das Package-compilieren nicht beschrieben. Wie geht das?

          Antworten
          • 15. Februar 2021 um 16:44 Uhr
            Permalink

            echt jetzt? Das ist doch Schritt für Schritt im ersten verlinkten Beitrag hier beschrieben!

  • 15. Februar 2021 um 17:24 Uhr
    Permalink

    Das habe ich schon gelesen. Bei mir gibt es nicht die Datei Win32\sources\adsdxe8studio.dproj, bzw. keine dproj-Datei.

    Antworten
    • 15. Februar 2021 um 17:27 Uhr
      Permalink

      Dann folge bitte den Anweisungen aus dem Beitrag. Schritt für Schritt. Keine Abkürzungen. Keine Umwege. Genauso funktioniert es bei sehr vielen schon seit sehr langer Zeit.

      Antworten
  • 15. Februar 2021 um 17:43 Uhr
    Permalink

    Das habe ich gemacht. Bei mir gibt es die Dateien adsdxedstudio.dpk und adsdxestudio.dpk nicht.

    Antworten
    • 15. Februar 2021 um 17:49 Uhr
      Permalink

      Nein, hast Du nicht!
      Wenn Du den Schritten gefolgt wärst, hättest Du die Dateien nicht in Program Files. Eine Installation erzeugt ausschließlich die Ordner von vorhandenen Delphi-Versionen. Du musst die Installation anhand diesem Beitrag [url]https://www.jd-engineering.de/using-ads-with-delphi-10-1-berlin/[/url] mit entsprechenden Parametern durchführen und dann an der angegebenen Stelle den Quellcode kopieren.

      Antworten
  • 15. Februar 2021 um 18:03 Uhr
    Permalink

    Ich habe die entsprechende Stell übersetzt und strukturiert;

    Zitat Anfang:
    1. Erstellen Sie in Programme(x86)\Advantage 12.0\TDataset eine Kopie der neuesten unterstützten Delphi-Version (Ordner Source?) und
    benennen Sie ihn in Delphi101Berlin um.
    2. Suchen Sie im Ordner Delphi101Berlin alle Kopien der Datei versions.inc (Win32, Win32\source, Win64, Win64\source) und
    ersetzen Sie sie durch diese versions.inc (Sie müssen die Erweiterung .txt entfernen).

    Starten Sie Delphi Berlin als Administrator,
    3. öffnen Sie das Laufzeitprojekt Win32\sources\adsdxe8studio.dproj und
    speichern Sie das Projekt als adsd101berlinstudio.dproj am gleichen Ort.

    Zitat Ende.

    1. ist mir nicht ganz verständlich. Bei mir gibt es den Ordner C:\Program Files (x86)\Advantage 12.0\TDataset\Source.
    Diesen habe ich nach C:\Program Files (x86)\Advantage 12.0\TDataset\DelphiXE10.3\win32 kopiert,
    sodass die Delphi-Dateien in C:\Program Files (x86)\Advantage 12.0\TDataset\DelphiXE10.3\win32\Source stehen.
    Es gibt da aber keine dproj und dpk-Dateien.

    Antworten
    • 15. Februar 2021 um 19:08 Uhr
      Permalink

      in Schritt 1 hat man sehr viele Unterordner, zB Delphi2007, Delphi2009, Delphi2010, … dort nimmt man sich den aktuellsten (je nach verwendeter Installation DelphiXE8, DelphiXE10.1 o.ä.) und mach davon eine Kopie. Darunter gibt es dann die Package-Sourcen. Nur dann kann man auch Schritt 2 weiterführen – da wird explizit auf die Unterordner eingegangen (Win32, Win32/source, Win64, …), welche es in TDatase/Source nicht gibt.
      ja, Source hat man auch direkt im TDataset Verzeichnis, aber davon schreibe ich nicht.

      Antworten
  • 16. Februar 2021 um 11:11 Uhr
    Permalink

    Mit dem Video habe ich es geschafft, vielen Dank.
    Da es für den User ziemlich umfangreich ist, habe ich einen konstruktiven Vorschlag:
    Es werden zwei Zip-Dateien zum Download angeboten. Eine für die aktuelle Community-Edition, die andere für die aktuelle kommerzielle Version. Die Zips enthalten vorbereitete Strukturen:

    1. Das Verzeichnis Syswow, welches die Dateien aus C:\adsdelphi\files\System32 enthält. Die Landeskennung in adslocal.cfg kann auf GERMAN voreingestellt sein und ggf. vom User geändert werden. Diese Dateien muss der User nur noch nach C:\Windows\SysWOW64 kopieren, wie bei 34:00 beschrieben.

    2. Das Verzeichnis Advantage 12.0 mit allen Unterverzeichnissen, welches der User nach C:\Program Files (x86) kopiert.

    Nun kann der User die Installation unter Delphi vornehmen, ab 40:15 bis 44:10.
    Das würde das Ganze aus User-Sicht deutlich einfacher gestalten.

    Antworten
    • 16. Februar 2021 um 11:19 Uhr
      Permalink

      ich pflege die Version in einem eigenen internen Git-Reposiory. Aber die Dateien zum Download anbieten oder das Repository öffentlich stellen ist eine Lizenz-Verletzung und ich habe weder übriges Geld noch die Lust, mich deshalb mit SAP zu streiten.

      Antworten
    • 5. März 2021 um 16:07 Uhr
      Permalink

      Hallo Chris,
      ich habe das gleiche Problem. Wo finde ich das Video?

      Gruß,
      Marko

      Antworten
      • 5. März 2021 um 16:44 Uhr
        Permalink

        im vorletzten Kommentar verlinkt.

        Antworten
  • 25. April 2021 um 5:53 Uhr
    Permalink

    in
    unit adsdata;
    function TAdsDataSet.LocateRecord( const KeyFields: string;
    const KeyValues: Variant;
    Options: TLocateOptions ): Boolean;

    memory leak
    temp_poFields := TList.Create;
    cure:

    temp_poFields.Free; // Igor 25 04 2021 memody leak
    end; { TAdsDataSet.LocateRecord }

    Antworten

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert