AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Programm nur im Kompatibilitätsmodus Win98 ausführbar
Thema durchsuchen
Ansicht
Themen-Optionen

Programm nur im Kompatibilitätsmodus Win98 ausführbar

Ein Thema von roga · begonnen am 1. Mär 2012 · letzter Beitrag vom 2. Mär 2012
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.590 Beiträge
 
Delphi 12 Athens
 
#1

AW: Programm nur im Kompatibilitätsmodus Win98 ausführbar

  Alt 1. Mär 2012, 18:31
Dann wenigstens in eine Logdatei, aber ganz weg ist nicht unbedingt die ideal.
Siehe http://www.delphipraxis.net/166818-d...-ersetzen.html , also das zugrundeliegende Problem da, in meiner Beschreibung.

Es ging halt mehr darum, daß du uns diese Meldung verrätst.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 1. Mär 2012 um 18:34 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von roga
roga

Registriert seit: 15. Jun 2008
Ort: Sachsen-Anhalt
109 Beiträge
 
Delphi XE8 Professional
 
#2

AW: Programm nur im Kompatibilitätsmodus Win98 ausführbar

  Alt 2. Mär 2012, 07:21
Diese Fehlermeldung hilft mir jetzt auch nicht weiter, denn die sagt ja im Prinzip das gleiche wie die bisherige, dass die Datenbank nicht geöffnet werden konnte:

ESQLiteException:Failed to open database "C:\Users\...\Documents\...\daten.dbs" : unable to open database file

Der Pfad ist auch vorhanden.
Ronald
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.076 Beiträge
 
Delphi 12 Athens
 
#3

AW: Programm nur im Kompatibilitätsmodus Win98 ausführbar

  Alt 2. Mär 2012, 07:41
Kann es sein, dass SQLite etwas im Ordner der Anwendung machen will? Temporäre Dateien oder so?
Arbeitest du in deinen Tests mit einer Standardkonfiguration von Windows 7?

Was da passiert sollte sich mit einem Log des Process Monitors herausfinden lassen. Ein "normaler" Benutzer wird den allerdings kaum bedienen können. Aber vielleicht lässt er dich ja kurz über TeamViewer auf den PC?
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von roga
roga

Registriert seit: 15. Jun 2008
Ort: Sachsen-Anhalt
109 Beiträge
 
Delphi XE8 Professional
 
#4

AW: Programm nur im Kompatibilitätsmodus Win98 ausführbar

  Alt 2. Mär 2012, 09:45
Danke Sebastian für den Tipp, aber es lag wirklich am verwendeten Wrapper. Jetzt läuft alles wie gewünscht und ich bin happy!

Folgende Änderungen an genannten Dateien führten zum Erfolg:
Delphi-Quellcode:
// SQLite3.pas -----------------------

function SQLite3_Open(filename: PUTF8String; var db: TSqliteDB): integer; cdecl; external SQLiteDLL name 'sqlite3_open';

// SQLiteTable3.pas ------------------

constructor TSQLiteDatabase.Create(const FileName: string);
var
  Msg: PAnsiChar;
  iResult: integer;
// utf8FileName: UTF8string;
begin
  inherited Create;
  fParams := TList.Create;

  self.fInTrans := False;

  Msg := nil;
  try
// utf8FileName := UTF8String(FileName);
// iResult := SQLite3_Open(PAnsiChar(utf8FileName), Fdb);
   
    iResult := SQLite3_Open(PUTF8String(AnsiToUtf8(FileName)), Fdb);

    if iResult <> SQLITE_OK then
      if Assigned(Fdb) then
      begin
        Msg := Sqlite3_ErrMsg(Fdb);
        raise ESqliteException.CreateFmt('Failed to open database "%s" : %s',
          [FileName, Msg]);
      end
      else
        raise ESqliteException.CreateFmt('Failed to open database "%s" : unknown error',
          [FileName]);

  finally
    if Assigned(Msg) then
      SQLite3_Free(Msg);
  end;

end;
Ronald
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz