Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi zugriffsverletzung - komme nicht mehr weiter (https://www.delphipraxis.net/113096-zugriffsverletzung-komme-nicht-mehr-weiter.html)

Delphi-Phil 2. Mai 2008 15:41

Datenbank: mysql • Zugriff über: ado

zugriffsverletzung - komme nicht mehr weiter
 
Liste der Anhänge anzeigen (Anzahl: 1)
ich habe einen ganz normalen button und rufe damit ein rave report auf:

Delphi-Quellcode:
RvProject1.Execute;
dann kommt ein mir unerklärlicher fehler! Screen von dem Fehler ist im Angang!+

Wenn ich einen anderen Report mit dem RvProjekt1 verknüpfe, dann kommt der Fehler nicht!


Habt Ihr eine Idee???

Gruß Phil

SirThornberry 2. Mai 2008 15:45

Re: zugriffsverletzung - komme nicht mehr weiter
 
die Adresse deutet darauf hinn das du ein Object nicht instanziert hast (nicht mit Create erzeugt hast)

Delphi-Phil 2. Mai 2008 15:46

Re: zugriffsverletzung - komme nicht mehr weiter
 
was heißt denn das bitte?? habe ich ja noch nie gehört...

Delphi-Phil 3. Mai 2008 07:58

Re: zugriffsverletzung - komme nicht mehr weiter
 
kann mir denn keiner weiter helfen...

ich verzweifel hier... :wall: :wall: :wall:

bluesbear 3. Mai 2008 08:47

Re: zugriffsverletzung - komme nicht mehr weiter
 
Geh doch mal im Debugger durch. Ich schätze, daß RvProjekt1 an der Stelle nil ist. Dann musst du nur noch herausfinden, warum :zwinker:

DeddyH 3. Mai 2008 08:57

Re: zugriffsverletzung - komme nicht mehr weiter
 
Noch schlimmer wäre, wenn er nicht nil ist, sondern auf einen falschen Speicherbereich zeigt.

Delphi-Phil 3. Mai 2008 09:01

Re: zugriffsverletzung - komme nicht mehr weiter
 
also erstmal vielen dank für eure hilfe...

das scheint nicht ganz so einfach zu sein!!

Ich habe jetzt im rave report mal die datenverbindungen neu gemacht und auf einmal geht es...

jetzt kommt aber der fehler: "ungültige zeigeroperation"!!

gruß Phil

Fussball-Robby 3. Mai 2008 09:04

Re: zugriffsverletzung - komme nicht mehr weiter
 
Zitat:

Zitat von Delphi-Phil
jetzt kommt aber der fehler: "ungültige zeigeroperation"!!

Ohja, wahrscheinlich hast du den Mauszeiger über einen ungültigen Bereich bewegt :mrgreen:
Spaß beiseite: Ohne Code kann man da nichts sagen, denke ich. Poste mal die Stelle des Codes, in der der Fehler auftritt.

Mfg

Delphi-Phil 3. Mai 2008 09:07

Re: zugriffsverletzung - komme nicht mehr weiter
 
ein bissel spaß muss auch sein;)


Delphi-Quellcode:
unit DruckenUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DBCtrls, Grids, DBGrids, DB, ADODB, StdCtrls, RpDefine, RpCon,
  RpConDS, RpRave;

type
  TDrucken = class(TForm)
    DBGrid1: TDBGrid;
    DBLookupComboBox1: TDBLookupComboBox;
    TblKlassen: TADOTable;
    DSKlassen: TDataSource;
    QrySchueler: TADOQuery;
    DSSchueler: TDataSource;
    Label1: TLabel;
    Label2: TLabel;
    Button1: TButton;
    QryZeugnisSchueler: TADOQuery;
    DBGrid2: TDBGrid;
    DataSource1: TDataSource;
    RvDataSetZeugnis: TRvDataSetConnection;
    RvDataSetZeugnisSchueler: TRvDataSetConnection;
    QrySchuelerName: TADOQuery;
    RvProject1: TRvProject;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormShow(Sender: TObject);
    procedure DSKlassenDataChange(Sender: TObject; Field: TField);
    procedure Button1Click(Sender: TObject);
    procedure DSSchuelerDataChange(Sender: TObject; Field: TField);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Drucken: TDrucken;

implementation

{$R *.dfm}

procedure TDrucken.FormClose(Sender: TObject; var Action: TCloseAction);
begin
TblKlassen.Close;
QrySchueler.Close;
end;

procedure TDrucken.FormShow(Sender: TObject);
begin
TblKlassen.Open;
end;

procedure TDrucken.DSKlassenDataChange(Sender: TObject; Field: TField);
var
KlassenID :Integer;
begin
KlassenID := TblKlassen.FieldByName('id').AsInteger;
QrySchueler.Close;
QrySchueler.Parameters.ParamByName('KlassenID').Value := KlassenID;
QrySchueler.Open;
end;


procedure TDrucken.Button1Click(Sender: TObject);
begin
//hier kommt der fehler!!
RvProject1.Execute;
end;

procedure TDrucken.DSSchuelerDataChange(Sender: TObject; Field: TField);
var
KlassenID : Integer;
IdSchueler : Integer;
begin
KlassenID := TblKlassen.FieldByName('id').AsInteger;
IdSchueler := QrySchueler.FieldByName('IdSchueler').AsInteger;

QryZeugnisSchueler.Close;
QryZeugnisSchueler.Parameters.ParamByName('IdSchueler').Value := IdSchueler;
QryZeugnisSchueler.Parameters.ParamByName('KlassenID').Value := KlassenID;
QryZeugnisSchueler.Open;

QrySchuelerName.Parameters.ParamByName('IdSchueler').Value := IdSchueler;
QrySchuelerName.Open;
end;




end.
das ist erstmal die unit wo der fehler auftaucht!

Safti 20. Mai 2008 13:59

Re: zugriffsverletzung - komme nicht mehr weiter
 
Zum letzten Fehler kann ich leider nichts sagen, aber evtl. mit der Zugriffsverletzung weiterhelfen.
Arbeitest du mit Events und hast an einem Event etwas geändert oder eine Komponente gelöscht, die ein Event hatte? Und dann vielleicht vergessen, die Events neu zu compilieren? Das ist bei mir mit 99,99% iger Wahrscheinlichkeit die Ursache der Zugriffsverletzung.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:22 Uhr.
Seite 1 von 2  1 2      

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