Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Delphi [Mac OS X]UniDac 6.1.6 Encryption führt zu Runtime-Error 231 (https://www.delphipraxis.net/186059-%5Bmac-os-x%5Dunidac-6-1-6-encryption-fuehrt-zu-runtime-error-231-a.html)

Darlo 30. Jul 2015 13:55

[Mac OS X]UniDac 6.1.6 Encryption führt zu Runtime-Error 231
 
Hallo zusammen,
bis gestern hat noch alles ohne Probleme funktioniert. Seit heute stürzt das Programm unter OS X ab (Runtime-Error 231 | DISK I/O Error) sobald mit eine SQLite DB eine Verschlüsselung enthält.

Tritt das Problem nur bei mir auf?

Info:
Crosspost: http://forums.devart.com/viewtopic.php?f=28&t=32196

Darlo 30. Jul 2015 14:23

AW: [Mac OS X]UniDac 6.1.6 Encryption führt zu Runtime-Error 231
 
und hier noch ein bisschen Code:
Delphi-Quellcode:
unit Unit2;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
  Uni, UniProvider, SQLiteUniProvider, FMX.Controls.Presentation, FMX.StdCtrls;

type
  TForm2 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form2: TForm2;
  uniconnection: TUniConnection;
  uniquery: TUniQuery;

implementation

{$R *.fmx}

procedure TForm2.Button1Click(Sender: TObject);
var
  dbFile:String;
begin
  uniconnection := TUniConnection.Create(nil);
  uniconnection.ProviderName := 'SQLite';
  uniconnection.SpecificOptions.Values['Direct'] := 'True';

  uniconnection.SpecificOptions.Values['EncryptionAlgorithm'] := 'leAES256';
  uniconnection.SpecificOptions.Values['EncryptionKey'] := 'TesttestTEST';
  uniconnection.SpecificOptions.Values['ForceCreateDatabase'] := 'True';


  {$IFDEF MacOS}
  ForceDirectories(GetHomePath + PathDelim +'Documents' + PathDelim + 'unidacTest');
  {$ENDIF}

  dbFile := {$IFDEF MSWindows}ExtractFileDir(ParamStr(0))+'\sqliteDb.sqlite';{$ENDIF}
            {$IFDEF MACOS}GetHomePath +PathDelim +'Documents'+ PathDelim + 'unidacTest'+ PathDelim +'sqliteDb.sqlite';{$ENDIF}

  uniconnection.Database := dbFile;
end;

procedure TForm2.Button2Click(Sender: TObject);
begin
  uniconnection.Connect;
  uniquery := TUniQuery.Create(nil);
  uniquery.Connection := uniconnection;
  uniquery.SQL.Text := 'CREATE TABLE test (testId, int)';
  uniquery.ExecSQL;
end;

end.

Union 30. Jul 2015 14:42

AW: [Mac OS X]UniDac 6.1.6 Encryption führt zu Runtime-Error 231
 
Zitat:

Zitat von Darlo (Beitrag 1310340)
Seit heute stürzt das Programm unter OS X ab ...

Was hast Du denn seit gestern geändert? Lief es dort mit Verschlüsselung durch? Und an welcher Stelle genau tritt der Fehler auf? Es könnte sein dass die dylib zum Verschlüsseln nicht gefunden werden kann. Evtl. mit deployen.

Darlo 30. Jul 2015 14:49

AW: [Mac OS X]UniDac 6.1.6 Encryption führt zu Runtime-Error 231
 
Zum Absturz führt der Zugriff auf die DB, in diesem Fall das
Delphi-Quellcode:
uniquery.ExecSQL;
.

Was ich gemacht habe:
Die vorhandene Datenbank unter OS X gelöscht.
Im AfterConnect werden dann die Tabellen erstellt (CREATE TABLE IF NOT EXISTS...), bzw. beim ersten ExecSql stürzt das Programm mit Runtime Fehler 231 ab.

Union 30. Jul 2015 14:59

AW: [Mac OS X]UniDac 6.1.6 Encryption führt zu Runtime-Error 231
 
Geht der Fehler weg wenn Du das Db-File wieder dort hinstellst?

Darlo 30. Jul 2015 16:28

AW: [Mac OS X]UniDac 6.1.6 Encryption führt zu Runtime-Error 231
 
Die ist leider nicht mehr da...

Darlo 31. Jul 2015 12:54

AW: [Mac OS X]UniDac 6.1.6 Encryption führt zu Runtime-Error 231
 
OK; ist wohl ein Bug
Zitat:

Thank you for the information. We have reproduced the issue, and we will inform you about the results shortly


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:26 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz