Aufruf einer Methode eines unbekannten Objektes [ERLEDIGT]

Konzeptionelles, Technisches, Termine, Fragen zum Hersteller usw.

Moderator: Moderatoren

Antworten
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Aufruf einer Methode eines unbekannten Objektes [ERLEDIGT]

Beitrag von Manfred »

Hi,

mal wieder ein blöder Fehler. Hat einer von euch schon mal versucht ein Objekt LOCAL zu machen und dann in einer anderen Methode eine Methode dieses LOCALen Objektes (welches ja dann unweigerlich nicht bekannt ist) aufzurufen? Das Programm ist sofort ohne eine Meldung, oder eine Fehlerdatei ausgestiegen. Hm, ist das richtig so, oder soll ich das mal dem Support weitergeben? Ich meine jetzt nicht den Ausstieg generell, sondern den sang- und klanglosen Ausstieg.
Zuletzt geändert von Manfred am Di, 25. Aug 2009 10:46, insgesamt 1-mal geändert.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15697
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 66 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von brandelh »

Hallo Manfred,

wie rufst du ein Objekt, das in einer Funktion local angelegt wurde in einer anderen Funktion auf ohne es als Parameter zu übergeben ?
Weiterhin hat ein Objekt eine Methode, oder es hat sie eben nicht ???
Ich denke ich stehe auf dem Schlauch bei deiner Problemschilderung und eventuell ging es der runtime auch so ;-)
Gruß
Hubert
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Manfred »

Hi Hubert,

ich habe das Objekt aus Versehen LOCAL gemacht, statt Private, oder Public. An und für sich ein doofes Dingen. Aber eben durch diesen Fehler ist es mir aufgefallen. Aber so wie ich gerade in meinem Mails nachgesehen habe hatte ich schon mal einen Programmabbruch ohne irgendwas dabei und da hat Andreas mir damals eine recht merkwürdige Antwort drauf gegeben. Ich Depp habe es verpennt, es bei unserem letzten Treffen Steffen vorzuführen. Naja, vielleicht beim nächsten Mal.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12909
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 46 Mal

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von AUGE_OHR »

Manfred hat geschrieben:oder soll ich das mal dem Support weitergeben? Ich meine jetzt nicht den Ausstieg generell, sondern den sang- und klanglosen Ausstieg.
wenn du es reproduzieren kannst auf jeden Fall, den ein Errorlog müsste/sollte immer erstellt werden ... egal was für ein "Fehler".

... ich "denke" das seit der SL1 v1.9.355 "irgendwas anders" ist mit dem Errorlog. Ich habe mit
activeX "immer" das Problem mit dem EVM, der ja in einem eigenem Thread läuft, das praktisch
alle Threads mit activeX nur den EVM im Errorlog anzeigt ... kein ProcName() oder ProcLine()

ich habe deshalb eine "eigene" Version von C:\ALASKA\XPPW32\Source\SYS\ErrorSys.prg
wo ich die Stelle

Code: Alles auswählen

   IF ThreadObject():ThreadId == UIThreadId()
      ? "(EVM Ereignis-Dispatcher)"
   ENDIF
modifiziert habe.

p.s. hat er den ein XppFATAL.LOG erzeugt ?
gruss by OHR
Jimmy
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Manfred »

Hi Jimmy,

es wurde gar nichts erzeugt. Deshalb ja hier meine Frage. Das Problem hatte ich schon mal mit der 331. Gibt es auch einen Thread hier. Ich muß mal sehen, wie ich etwas für den Support zusammenbauen kann.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9367
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 102 Mal
Danksagung erhalten: 361 Mal
Kontaktdaten:

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Tom »

Hallo, Manfred.

Wenn ich Dich recht verstehe, geht es Dir um das meldungslose Abstürzen in diesem Fall, richtig?

Was ich aber nicht verstehe - warum soll es ein Fehler sein, ein Objekt als LOCAL zu deklarieren? Das ist m.E. in jedem Fall das Mittel der Wahl. Wenn das Objekt durch Funktionen oder andere Objekte manipuliert werden soll, kann es als Parameter übergeben werden, ggf. per Call-by-reference. Nur so kann man gewährleisten, dass die Software strukturell konsistent ist. Publics sind sogar threadübergreifend sichtbar, und Privates in allen Funktionen und Prozeduren, die von der deklarierenden Funktion oder Prozedur aufgerufen werden. Wenn man dann Objektnamen wie "oXbp" mehrfach verwendet, legt man sich ggf. dicke Eier mit Privates oder Publics. Nicht machen.
Herzlich,
Tom
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Manfred »

Tom,

es ging jetzt nur um die Frage, ob das überhaupt sein kann, bzw. ob das schon mal jemand hatte. Es war ein Programmierfehler meinerseits, der das verursacht hat. Dadurch ist es mir ja aufgefallen. Das Objekt war LOCAL und deshalb nicht bekannt. Das sollte aber alles nicht so sein. Aber das ist nicht das wesentliche, sondern die Reaktion der Runtime darauf.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9367
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 102 Mal
Danksagung erhalten: 361 Mal
Kontaktdaten:

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Tom »

@Manfred: Also hatte ich Dich richtig verstanden.

Manchmal kann man übrigens auch als Programmierer das Fehlersystem so in die Knie zwingen, dass nicht einmal mehr ein XppFatal erzeugt wird. :wink:
Herzlich,
Tom
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Manfred »

jaja, das mag stimmen,

aber theoretisch auf eine unbekannte Var so zu reagieren? Ist ja schon fast divenhaft. :lol:
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15697
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 66 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von brandelh »

Manfred hat geschrieben:jaja, das mag stimmen,
aber theoretisch auf eine unbekannte Var so zu reagieren? Ist ja schon fast divenhaft. :lol:
Aber Herr Richter, das Opfer hätte sich doch noch wehren können ... nachdem die 45 Magnum durch das Gehirn durch war :badgrin:
Gruß
Hubert
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Manfred »

Weichei :angry1:
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1930
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Rolf Ramacher »

Hi Manfred,

ich mache alle oDlg Local, da die Namen immer die gleichen sind, aber auch nur in diesem Programmteil sichtbar sein sollen. In einem einzigen Fall habe ich 4-6 Dialoge und muß zum Schluss auf den 1. wieder zurück. In diesem Fall wird der dialog in ein Array überführt und das Array ist Privat.

Aber sonst IMMER Local . dann kommst du nicht durcheinander und zerschießt die keine Dialoge.
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Manfred »

Wie schön, dass mich wieder nahezu keiner versteht. Egal, ist halt so...... :(
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16517
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Martin Altmann »

Moin,
ich habe Dich verstanden 8)
Egal: Wenn Du ein "Objekt" hast, dass nicht existiert (also NIL ist) und Du irgendeine Methode von NIL (die es ja logischerweise nicht gibt) aufrufst, dann knallt es halt. Allerdings - passend dazu - im Nirwana :D

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Manfred »

Hm,

das war ja meine Frage, kann es sein, dass wirklich gar nichts passiert. Ein Programmende ohne irgendwelche Hinweise. Du hast das jetzt so bestimmt geschrieben, als wenn Du auch einen Grund für diesen Abbruch ohne alles wüßtest, oder war das jetzt nur eine Bestätigung meiner Entdeckung?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14655
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Jan »

Manfred,

ich selber hatte das schon 2 oder 3 mal, daß ich mein Programm ohne jede Fehlermeldung zum Absturz gebracht hatte. Ich habe nie rausgefunden warum. Es kann aber nicht an Klassen oder Methoden von mir gelegen haben. Du weißt schon weshalb.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16517
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Martin Altmann »

Hallo Manfred,
ich schreibe das so bestimmt, weil ich Dich verstanden habe :D
Abgesehen davon: Das Phänomen an sich ist mir in dieser Konstellation auch nicht ganz unbekannt. Und auch verständlich.

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: Aufruf einer Methode eines unbekannten Objektes

Beitrag von Manfred »

Prima,

dann ist alles in Butter. Wenn ich mal die Muße und die Ruhe finde, dann werde ich mal versuchen ein Beispiel zusammenzustellen und es an Alaska schicken.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16517
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: Aufruf einer Methode eines unbekannten Objektes [ERLEDIGT]

Beitrag von Martin Altmann »

:?:
local bla
bla := NIL
bla:Unbekannt()
sollte doch schon ausreichen... Oder nicht?

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: Aufruf einer Methode eines unbekannten Objektes [ERLEDIGT]

Beitrag von Manfred »

Das muß ich ja erst einmal ausprobieren.

Bei meinem letzten Problem:

http://www.xbaseforum.de/viewtopic.php? ... hilit=oean

gab es auch keine Meldung usw. Aber Hubert hat es bei sich geschafft, eine zu bekommen. Deshalb werde ich mir ein wenig Zeit nehmen müssen um zu sehen, ob es wirklich mit Deiner Idee so getan wäre, oder ob ich etwas weiter ausholen muß.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15697
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 66 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Aufruf einer Methode eines unbekannten Objektes [ERLEDIGT]

Beitrag von brandelh »

Ich höre da Hubert ... :D

Dieses Beispiel hier:

Code: Alles auswählen

proc main
 local oNix
 cls
 ? "Test"
 wait
 oNix := NIL
 oNix:unbekannt()
 ? "Ende"
return
meldet mit der 1.90.355:

"Empfänger der Nachrichten ist kein Objekt"
"Operation: unbekannt"
...
XPPError.log ....

also wie erwartet =D>
Gruß
Hubert
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: Aufruf einer Methode eines unbekannten Objektes [ERLEDIGT]

Beitrag von Manfred »

na gut, versuchen wir es einmal anders herum.

Das LOCALe Objekt wird aus einer Methode der Superklasse eines anderen Objektes aufgerufen. Ich denke mal, da liegt die Verwurstung. Und deshalb wird es sicherlich etwas blümeranter ein Beispiel aufzubauen.

Aber lassen wir es jetzt, bevor wir ins Philosophieren abdriften, ob man sowas macht oder nicht, oder was weiß ich. Mein Frage ist beantwortet und ich werde mich erstmal damit abfinden müssen.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Antworten