Autor Beitrag
Daniel L.
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 140
Erhaltene Danke: 14

W7, W8
TurboD Prof, Delphi Community
BeitragVerfasst: Sa 18.05.19 23:36 
N'Abend!

Unter der Community Edition 10.3 bekomme ich beim Erstellen eine DataSet über TClientDataSet
eine Fehlermeldung.


- Komponente TClientDatsSet aufs Formular
- Im Feldeditor neue Felder erstellen
- 'DataSet erstellen' --> Zugriffverletzung bei Adresse .... in Modul 'dsnap260.bpl'. Lesen von Adresse 00000000.

Das gleich passiert auch beim dem Versuch, eine bestehende myBase einzulesen ('Aus MyBase Tablelle laden...')

Unter D2006 geht das problemlos.

Hat jemand eine Idee?

Danke - Daniel


Zuletzt bearbeitet von Daniel L. am Mo 20.05.19 17:53, insgesamt 1-mal bearbeitet
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 19.05.19 00:20 
- Nachträglich durch die Entwickler-Ecke gelöscht -
Daniel L. Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 140
Erhaltene Danke: 14

W7, W8
TurboD Prof, Delphi Community
BeitragVerfasst: So 19.05.19 01:25 
ja, wie immer auf meiner HD in dem entsprechenden Dokument-Ordner

Daniel
Daniel L. Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 140
Erhaltene Danke: 14

W7, W8
TurboD Prof, Delphi Community
BeitragVerfasst: So 19.05.19 20:34 
bei Delphi 10.1 (kostenlose Version) tritt der Fehler auch auf...

hmm,

vielleicht könnte mal jemand, der eine der beiden Versionen hat,
die oben genannten Schritte mal kurz ausprobieren?

Daniel
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 19.05.19 23:36 
- Nachträglich durch die Entwickler-Ecke gelöscht -
Daniel L. Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 140
Erhaltene Danke: 14

W7, W8
TurboD Prof, Delphi Community
BeitragVerfasst: Mo 20.05.19 10:49 
Hallo Frühlingsrolle

folgender Code geht unter D2006, aber nicht unter Community;


ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure TForm1.Button1Click(Sender: TObject);
var cds : TClientDataSet;
begin
  cds := TClientDataSet.Create(self);
  cds.FieldDefs.Add('zahl', ftInteger);
  cds.CreateDataSet;                    // --> Fehler
  cds.SaveToFile('test.xml');
  freeAndNil (cds);
end;



Der Fehler erfolgt in Unit Datasnap.DBClient in procedure TCustomClientDataSet.InternalCheck
bei der Anweisung

FDSBase.GetErrorString(Status, Pointer(@ErrMsgBuffer[0]));,

was mir nicht viel sagt.

Adminrechte sind vorhanden (wobei beim Erstellen der DataSet ja noch gar nichts geschrieben wird)
Daniel L. Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 140
Erhaltene Danke: 14

W7, W8
TurboD Prof, Delphi Community
BeitragVerfasst: Mo 20.05.19 13:06 
Nach viel rumprobieren und recherchieren :nixweiss: :

Der Fehler liegt an einer offensichtlich für D 10.3 veralteten midas.dll Version.
Unter Delphi 10.3 muss die von Empa bereitgestellte midas.dll (win32) benutzt werden.
Auffindbar (bei mir) in C:\Program Files (x86)\Embarcadero\Studio\20.0\Redist\win32

Die veraltete midas im Ordner Windows\SysWOW64 (W7) muss duch diese ersetzt werden.
Die neue midas funzt auch unter D2006

Die Wirkung der neuen midas zur Designzeit macht sich erst nach einem Neustart von Delphi bemerkbar.
Nersgatt
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1581
Erhaltene Danke: 279


Delphi 10 Seattle Prof.
BeitragVerfasst: Di 21.05.19 11:28 
Wenn Du in der .dpr die Unit MidasLib einbindest, musst Du die DLL nicht mit ausliefern, dann wird alles Notwendige mit in die EXE gelinkt.
Das ist für mich immer der einfachste und unkomplizierteste Weg.

_________________
Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)

Für diesen Beitrag haben gedankt: Daniel L.