AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein EAccessviolation -> Unit Doscommand???
Thema durchsuchen
Ansicht
Themen-Optionen

EAccessviolation -> Unit Doscommand???

Offene Frage von "viakt133"
Ein Thema von viakt133 · begonnen am 16. Apr 2010 · letzter Beitrag vom 16. Apr 2010
Antwort Antwort
viakt133

Registriert seit: 16. Feb 2010
18 Beiträge
 
Lazarus
 
#1

EAccessviolation -> Unit Doscommand???

  Alt 16. Apr 2010, 11:26
Hallo,

bin einigermassen ratlos, weil ich an dieser Stelle, ab Zeile 380 in der Unit Doscommand die EAccessviolation erhalte. Kann mir nicht erklären, warum.

Hier der Codeausschnitt:

Delphi-Quellcode:
                    FOutputLines.Add(Str);
                if Assigned(FOnNewLine) then
                  FOnNewLine(FOwner, Str, otEntireLine);
                Str := '';
Wer kann mir helfen? Hab die Unit mal dazu gepackt, siehe Anhang.
Angehängte Dateien
Dateityp: pas doscommand_118.pas (21,5 KB, 8x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: EAccessviolation -> Unit Doscommand???

  Alt 16. Apr 2010, 11:29
Und welche Meldung kommt da?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von guinnes
guinnes

Registriert seit: 28. Feb 2007
Ort: Bottrop
265 Beiträge
 
Delphi 5 Enterprise
 
#3

Re: EAccessviolation -> Unit Doscommand???

  Alt 16. Apr 2010, 11:37
Das ist scheinbar die Version, die Sirius nochmal überarbeitet hat. Die hier Tut bei mir problemlos
Glückauf
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: EAccessviolation -> Unit Doscommand???

  Alt 16. Apr 2010, 12:06
Generell ist es bei Fehlermeldung hilfreich im Detail zu nennen. Bei einer Zugriffsverletzung tauchen auch einige Adressen auf welche bei der Fehlersuche mitunter sehr interessant sind.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
viakt133

Registriert seit: 16. Feb 2010
18 Beiträge
 
Lazarus
 
#5

Re: EAccessviolation -> Unit Doscommand???

  Alt 16. Apr 2010, 12:47
Danke @guinnes, mit dieser Version klappt es!

@DeddyH + @SirThornberry,

Hatte folgende Fehlermeldungen :

Zugriffsverlatzung bei Adresse $0048AE00 in Modul <meine.exe>
Lesen von Adresse $FFFFFFFF

Der Debuggercursor war dann auf dem angegebenen Textausschnitt.

Die Version von guinnes funzt zwar erst mal, aber vielleicht kann ich bei der Fehlersuche in der vorherigen Version noch was lernen. Die Version von guinnes musste ja auch irgendwer berichtigen.

Kann also nich verkehrt sein, die Fehlerursache nachzuvollziehen.
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: EAccessviolation -> Unit Doscommand???

  Alt 16. Apr 2010, 13:09
Zitat von viakt133:
Die Version von guinnes musste ja auch irgendwer berichtigen.
Das war ich.

Zitat:
Die Version von guinnes funzt zwar erst mal, aber vielleicht kann ich bei der Fehlersuche in der vorherigen Version noch was lernen.
In TDoscommand wird ein Thread verwendet, der quasi die Console "steuert". Und die drei wichtigsten Regeln bei der Threadprogrammierung sind:
  1. synchronisieren
  2. synchronisieren
  3. synchronisieren
Und genau das wurde in deiner Version nicht gemacht. Dadurch kommt es häufig (evtl. sogar zufällig) zu Zugriffsverletzungen.

Edit: Hier gab es auch schon eine verbesserte Version, welche den Fehler aufgriff, dafür hatte sie in meinen Augen andere Mankos.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  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 12:57 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