AGB  ·  Datenschutz  ·  Impressum  







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

Zugriffsverletzung ??? Ich kappiers nicht!

Ein Thema von faux · begonnen am 13. Mai 2004 · letzter Beitrag vom 13. Mai 2004
Antwort Antwort
Seite 2 von 2     12   
IngoD7

Registriert seit: 17. Feb 2004
464 Beiträge
 
Delphi 7 Enterprise
 
#11

Re: Zugriffsverletzung ??? Ich kappiers nicht!

  Alt 13. Mai 2004, 20:09
Ist das abgefragte Feld an der Stelle vielleicht ein leerer String? Dann geht die Abfrage auf ein bestimmtes Zeichen des Strings in die Hose.
  Mit Zitat antworten Zitat
Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#12

Re: Zugriffsverletzung ??? Ich kappiers nicht!

  Alt 13. Mai 2004, 20:09
aarghh, ich idiot!!!

wahrscheinlich isses das:

du hast 2 variablen Commands, er weiss nit, welche er nehmen soll

wobei, stand nicht mal innem buch, das die lokale die globale übergeht?

ausprobieren
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#13

Re: Zugriffsverletzung ??? Ich kappiers nicht!

  Alt 13. Mai 2004, 20:13
Delphi-Quellcode:
unit Unit2;

interface

uses SysUtils, AgentObjects_TLB;

const
  LMax = 2;

type
  TCommandAction = (ccTrue, ccFalse, ccNoCommand);

function Inizialize(const Command: String; AgentItem: IAgentCtlCharacterEx): TCommandAction;
function ActCommand(Commands: Array of String; AgentItem: IAgentCtlCharacterEx): TCommandAction;

implementation

function Inizialize(const Command: String; AgentItem: IAgentCtlCharacterEx): TCommandAction;
var
  Commands: Array[1..LMax] of String;
  i, j: Integer;
begin
  j := 0; //Hier ist EIN Fehler, weil der Array bei 1 beginnt, aber der ist anscheiden egal..
  if Length(Command) > 0 then
  begin
    for i := 0 to Length(Command) - 1 do //ARG!! der index eines strings beginnt bei 1 und nicht bei 0!!! aber wieso gibz da keine exception?
      if Command[i] <> ' then
        Commands[j] := Commands[j] + Command[i] //hier, j ist 0 und er schreibt aber anstandslos auf den array, wie das?
      else
        if j < Lmax then
          inc(j)
        else
          break;
    Result := ActCommand(Commands, AgentItem);
  end
  else
    Result := ccFalse;
end;

function ActCommand(Commands: Array of String; AgentItem: IAgentCtlCharacterEx): TCommandAction;
begin
  if Commands[1][1] = ':then //Hier tritt sie auf.... hm....
  begin
    result := ccTrue;
  end
  else
    result := ccNoCommand;
end;

end.
hab das ausgebessert. jetzt weiß ich wieso die zugriffsverletzung auftritt, der array ist leer... *gg*
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#14

Re: Zugriffsverletzung ??? Ich kappiers nicht!

  Alt 13. Mai 2004, 20:18
Zitat von glkbkk:
aarghh, ich idiot!!!

wahrscheinlich isses das:

du hast 2 variablen Commands, er weiss nit, welche er nehmen soll

wobei, stand nicht mal innem buch, das die lokale die globale übergeht?

ausprobieren
nein nein nein!

1. mal sind beide variablen lokal und nicht global. denn die eine ist im var teil und die andere in der deklaration...

2. mal heißt eine commands und die andere nur command (ohne s)... *gg*
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#15

Re: Zugriffsverletzung ??? Ich kappiers nicht!

  Alt 13. Mai 2004, 20:43
hmmm, jetzt wo dus sagst seh ichs auch...
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 22:09 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