AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Bitte CODE prüfen - bekomme Immer eine Zugriffsverletzung???
Thema durchsuchen
Ansicht
Themen-Optionen

Bitte CODE prüfen - bekomme Immer eine Zugriffsverletzung???

Ein Thema von SimStar001 · begonnen am 5. Dez 2008 · letzter Beitrag vom 17. Jan 2009
Antwort Antwort
Seite 3 von 3     123   
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#21

Re: Bitte CODE prüfen - bekomme Immer eine Zugriffsverletzun

  Alt 5. Dez 2008, 21:31
Hallo,

liefert die Funktion tsrGetSpeakers wirklich alle Informationen oder füllt sie das übergebene Array nur mit IDs? Die Beschreibung der Schnittstelle in diesem Beitrag lässt auf letzteres schließen.

Gruß Hawkeye
  Mit Zitat antworten Zitat
SimStar001

Registriert seit: 18. Jan 2008
594 Beiträge
 
#22

Re: Bitte CODE prüfen - bekomme Immer eine Zugriffsverletzun

  Alt 5. Dez 2008, 21:51
Danke für den Link, ich glaube genau das problem habe ich auch!

kann es vielleicht auch daran liegen wie dort geschireben wurde?

Zitat:
Moin Sko,

ich würde den Timer zu Beginn der OnTimer-Routine ab-, und nach der Abarbeitung wieder einschalten. (so ähnlich hab' ich das heute doch schon 'mal geschrieben Grübelnd... Wink)

Delphi-Quellcode: markieren
begin
PopupTimer.Enabled := false;
try
// hier der eigentliche Code für die OnTimer Routine
finally
PopupTimer.Enabled := true;
end;
end;


Damit verhinderst Du, dass die Routine erneut aufgerufen wird, bevor sie abgearbeitet wurde.
Es könnte gut sein, dass die Routine länger als eine Sekunde braucht...

Ich werde diese Lösung zumindest erstmal mit einbeziehen und dann weiter testen und natürlich die TSRemote.dll die dort zur verfügung steht nutzen!

Zur zeit läuft das programm mal wieder seit mehr als 20 mins stabil ohne fehler!?
Marco Tröger
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.464 Beiträge
 
Delphi 12 Athens
 
#23

Re: Bitte CODE prüfen - bekomme Immer eine Zugriffsverletzun

  Alt 8. Dez 2008, 10:30
Delphi-Quellcode:
type Player_ = record
      ID : integer;
      Name : string;
      end;

var Player : array of player_;

function DoGetSpeakers : pchar;
  {...}
        result := pchar(player[u].Name);
Ich vermute die Fehlerursache ist bei der Verwendung von PChar zu suchen.
Dynamische Arrays können unter Umständen im Speicher verschoben werden, insbesondere wenn sich die Anzahl der Elemente vergrößert.
Den Rückgabewert unbedingt auf String ändern. Prüfen, wo es noch ähnlichen Schwachstellen gibt.
Zugriffsverletzungen treten leider nicht immer dort auf, wo diese verursacht werden.
  Mit Zitat antworten Zitat
SimStar001

Registriert seit: 18. Jan 2008
594 Beiträge
 
#24

Re: Bitte CODE prüfen - bekomme Immer eine Zugriffsverletzun

  Alt 17. Jan 2009, 09:41
Das problem liegt darin, dass ich den rueckgabewert leider nicht aendern kann, da die funktion in der TSRemote.dll liegt, auf die iach keinen einfluss habe... oder gibt es noch eine andere moeglichkeit?
Marco Tröger
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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:10 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