AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Zugriffsverletzung bei Zugriff auf 2. Unit? Wo ist das Problem?

Zugriffsverletzung bei Zugriff auf 2. Unit? Wo ist das Problem?

Ein Thema von majornudelholz · begonnen am 10. Apr 2016 · letzter Beitrag vom 10. Apr 2016
Antwort Antwort
Benutzerbild von majornudelholz
majornudelholz

Registriert seit: 22. Nov 2015
15 Beiträge
 
Delphi XE7 Professional
 
#1

Zugriffsverletzung bei Zugriff auf 2. Unit? Wo ist das Problem?

  Alt 10. Apr 2016, 17:20
Delphi-Version: XE7
Hallo!

Ich programmiere mir grade einen sogenannten "Angriffsplaner" für ein Strategiespiel. Daher ist es wichtig "timen" zu können, weshalb ich in mein bisher laufendes Programm eine Uhr laufen lassen möchte, die die Zeit in Millisekunden genau angibt. Beim Klicken eines Feldes/Buttons im MainMenu-Bereich soll sich also eine Uhr mit eben diesen Anforderungen auf einem neuen Formular öffnen.

Das alles habe ich bisher hingekriegt, nur jetzt scheitert mein Programm daran, dass es, wenn es den "Timer" (die Uhr mit den Millisekunden) über die MainMenu-Leiste öffnen soll eine Zugriffsverletzung als Fehler ausgibt... Vielleicht findet ihr ja den Fehler bzw. könnt mir sagen, was ich falsch gemacht habe.

Die Hauptunit mit dem Angriffsplaner:
Delphi-Quellcode:
[CODE]unit UAngriffsplanerH;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls, Vcl.ComCtrls,
  Vcl.Menus, System.UITypes, UTimer;

type
  TFAngriffsplaner = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    BalloonHint1: TBalloonHint;
    Panel3: TPanel;
    Panel4: TPanel;
    DatePicker: TDateTimePicker;
    Button1: TButton;
    ListBox1: TListBox;
    TimePicker: TDateTimePicker;
    ComboBox1: TComboBox;
    NowTimer: TTimer;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    MainMenu1: TMainMenu;
    Datei1: TMenuItem;
    Einstellungen1: TMenuItem;
    Bearbeiten1: TMenuItem;
    zurcksetzen1: TMenuItem;
    imer1: TMenuItem;
    Showmessages1: TMenuItem;
    An1: TMenuItem;
    Aus1: TMenuItem;
    procedure Button1Click(Sender: TObject);
    function GetRunTime(sx, sy, zx, zy:integer):real;
    procedure FormCreate(Sender: TObject);
    procedure NowTimerTimer(Sender: TObject);
    function SecondsToTime(Seconds: Integer): TDateTime;
    procedure zurcksetzen1Click(Sender: TObject);
    procedure An1Click(Sender: TObject);
    procedure Aus1Click(Sender: TObject);
    procedure imer1Click(Sender: TObject);
  private
    Datum,Zeit,DateTimeA,StartTime : TDateTime;
    combxi,Seconds,Minutes,Hours,Days,RunTime : Integer;
    unitspeed : Real;
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  FAngriffsplaner: TFAngriffsplaner;
  FTimer: TFTimer;

implementation

{$R *.dfm}[/CODE]
(unter implementation folgt natürlich was, doch da liegt 100% nicht der Fehler)

Meine Timer-Unit:
Delphi-Quellcode:
[CODE]unit UTimer;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, Vcl.StdCtrls;

type
  TFTimer = class(TForm)
    Label1: TLabel;
    Timer1: TTimer;
    procedure Timer1Timer(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  FTimer: TFTimer;

implementation

{$R *.dfm}[/CODE]
Vielen Dank, für jede Anregung!!!
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#2

AW: Zugriffsverletzung bei Zugriff auf 2. Unit? Wo ist das Problem?

  Alt 10. Apr 2016, 17:24
unter implementation folgt natürlich was, doch da liegt 100% nicht der Fehler
Ich wette dagegen Her mit dem Code!
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Zugriffsverletzung bei Zugriff auf 2. Unit? Wo ist das Problem?

  Alt 10. Apr 2016, 17:33
Da gibt es in beiden Units die Globale Variable fTimer??
Fritz Westermann
  Mit Zitat antworten Zitat
Benutzerbild von majornudelholz
majornudelholz

Registriert seit: 22. Nov 2015
15 Beiträge
 
Delphi XE7 Professional
 
#4

AW: Zugriffsverletzung bei Zugriff auf 2. Unit? Wo ist das Problem?

  Alt 10. Apr 2016, 17:51
Oh mein Gott.

Du hast Recht, das war mein Fehler mit den Variablen.. Danke dir!
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Zugriffsverletzung bei Zugriff auf 2. Unit? Wo ist das Problem?

  Alt 10. Apr 2016, 18:06
Aber wieso benutzt Du globale Variablen? Die sollte man so weit es nur möglich ist vermeiden!
Fritz Westermann
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 14:54 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