AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

EAccesss Violation

Ein Thema von Spike2k3 · begonnen am 24. Aug 2003 · letzter Beitrag vom 24. Aug 2003
Antwort Antwort
Spike2k3

Registriert seit: 20. Aug 2003
73 Beiträge
 
Delphi 7 Enterprise
 
#1

EAccesss Violation

  Alt 24. Aug 2003, 01:00
Argh, bei mir kommt immer EAccesss Violation wenn ich mein Programm straten will.
Es liegt scheinbar an einer Unit, da wenn ich sie rausnehme, das Programm normal startet.
Hat irgendwer ne Ide, woran das liegen kann?
Hier ist mal der Code, schon mal im Vorraus danke für jede Hilfe.
Delphi-Quellcode:
unit Unit4;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, inifiles ;

type
  TForm4 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Formcreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form4: TForm4;
  Pass,Pass1 : String;
  ini: TIniFile;
implementation

uses Unit5, Unit6;

{$R *.dfm}

procedure TForm4.Formcreate(Sender: TObject);
begin
begin
  ini:=TIniFile.create('./File1.ini');
  try
    Pass:=ini.ReadString('Form','Pass','Horst');
    Pass1:=ini.ReadString('Benutzer','Pass','Horst');
  finally
    ini.free;
    end;
end;
end;


procedure TForm4.Button1Click(Sender: TObject);
begin
    begin
    if Edit1.Text = pass then form5.show else
    showmessage ('Sucker, falsches Pass');
    end;
    begin
    if Edit1.Text = pass1 then form6.show else
    showmessage ('Sucker, falsches Pass');
    end;
end;
end.
  Mit Zitat antworten Zitat
Benutzerbild von Aya
Aya

Registriert seit: 24. Jul 2003
Ort: Kassel
138 Beiträge
 
Delphi 6 Professional
 
#2

Re: EAccesss Violation

  Alt 24. Aug 2003, 01:03
Hi,

in diesem Code schnipsel ist kein fehler... von daher kann ich dir auchnicht weiter sagen was das Problem ist..

Aber, du kannst dir ein paar begin's/End's sparen
hier z.B.:

Delphi-Quellcode:
procedure TForm4.Formcreate(Sender: TObject);
begin
begin
  ini:=TIniFile.create('./File1.ini');
  try
    Pass:=ini.ReadString('Form','Pass','Horst');
    Pass1:=ini.ReadString('Benutzer','Pass','Horst');
  finally
    ini.free;
    end;
end;
end;
das reicht so völlig:
Delphi-Quellcode:
procedure TForm4.Formcreate(Sender: TObject);
begin
  ini:=TIniFile.create('./File1.ini');
  try
    Pass:=ini.ReadString('Form','Pass','Horst');
    Pass1:=ini.ReadString('Benutzer','Pass','Horst');
  finally
    ini.free;
  end;
end;
Au'revoir,
Aya~
I aim for my endless dreams and I know they will come true!
S: String = #86^)^3^)^4#58#32^(^4^4^0#58#47#47^7^7^7#46^+^/^3^(^)^'^!^9^!#46^$^%;
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: EAccesss Violation

  Alt 24. Aug 2003, 01:31
Moin Spike,

das hier ist nicht ungefährlich:

'./File1.ini'

damit wird die Datei File1.ini angesprochen, die sich im Arbeitsverzeichnis des Programmes befindet. Da dieses aber während eines Programmlaufes veränderbar ist kann es zu unerwarteten Problemen führen. Am Besten, Du gibst den Pfad vollständig an.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Aya
Aya

Registriert seit: 24. Jul 2003
Ort: Kassel
138 Beiträge
 
Delphi 6 Professional
 
#4

Re: EAccesss Violation

  Alt 24. Aug 2003, 01:32
Hi,
Zitat von Christian Seehase:
das hier ist nicht ungefährlich:
'./File1.ini'
Aber es würde keine AccessViolation hervorufen
Also muß der fehler woanders liegen.

Au'revoir,
Aya~
I aim for my endless dreams and I know they will come true!
S: String = #86^)^3^)^4#58#32^(^4^4^0#58#47#47^7^7^7#46^+^/^3^(^)^'^!^9^!#46^$^%;
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: EAccesss Violation

  Alt 24. Aug 2003, 01:41
Moin Spike,

geh' doch mal im Einzelschritt durch das Programm (F7/F8 ) bis der Fehler kommt. Dann lässt sich der Fehler besser einkreisen.

@Aya:
Nö, 'ne AV wird's dadurch nicht geben, aber es kann üble, und vor allem schwer zu findende, Fehlfunktionen hervorrufen sich auf das Arbeitsverzeichnis zu verlassen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Leuselator
Leuselator

Registriert seit: 18. Mär 2003
Ort: Berlin
589 Beiträge
 
Delphi 8 Architect
 
#6

Re: EAccesss Violation

  Alt 24. Aug 2003, 04:16
Falls Du es nicht kennst, sonst ignorieren:

Menü: Start: Parameter: Lasche "Lokal": Eintrag: "Host-Anwendung"

dort "C:\Programme\Borland\Delphi5\Bin\delphi32.exe " oder wo auch immer Deine Delphi-Exe steckt eintragen.

Wenn Du dann startest, lädt Delphi nochmals Delphi dieses dann Dein Programm. Du kannst dann im ursprünglichen Delphi durch setzen von Breakpoints Den Programmablauf verfolgen.

So fängst Du auch Fehler ab (und kannst sehen, wo genau sie entstehen), bei denen Dir Delphi sonst nur eine lapidare Fehlermeldung bringt.

Besonders wichtig ist dies bei eigenen Komponenten, wenn Dir Fehler schon im Designer zur Entwurfszeit um die Ohren fliegen (kommt bei mir Aufgrund exzessiver Komponentenentwicklung leider öfter vor :-)

GreetsToAll
Tim Leuschner
  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 11:48 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