Martin Wodrich <[EMAIL PROTECTED]> wrote on 02.12.05:

> Michael Heydekamp <[EMAIL PROTECTED]> schrieb am 01.12.05 um 18:55:

>> Martin, kannst Du bitte mal die Staende 26.08.2000 und 28.08.2000
>> compilieren und mir hinlegen?

> Leider nein. Den beide Staende lassen sich nicht compilieren.

Ok, dann formuliere ich es so: Den letzten compilierbaren Stand vor dem
27.08.2000 und den letzten compilierbaren Stand nach dem 27.08.2000. ;-)

> Der Stand 26.08.2000 findet erst das gescheiterte Projekt xpeasy
> und wenn man dies auskommentiert, dann kommt man zu einer Procedure
> deren Procedure-Kennwort teilweise mit Muellzeichen ueberschrieben
> ist.
> Dem Stand 28.08.2000 fehlt die XPFONTS.INC . daher kommt er erst gar
> nicht soweit.

Wie kann das denn?

>> Sollte sich das bewahrheiten, werde ich wohl mal Jochen anschreiben,
>> wenn wir selbst nicht unmittelbar einen Fix oder Workaround finden.

> Ich denke wir muessen ihn anschreiben,

Schon passiert, noch keine Antwort.  Noch vor ein paar Tagen waren wir
aber in Kontakt, insofern bin ich guter Hoffnung.

> da wir beide doch wohl eher nur rudimentaer Assembler koennen.

Ich hab gestern versucht, das noch etwas einzukreisen.  Da man das ja
schlecht im Compiler debuggen kann (es hilft mir wenig, wenn der Fehler
kommt und Windows den BP-Task abschießt), hab ich mir deshalb in
xp1.exitscreen erst mal ein paar Hinweise eingebaut, um mal zu sehen, wo
die Fehlermeldung auftritt.

Ergebnis: Weiß nicht...  Wenn ich nur vor der vorletzten Anweisung ein
'hinweis()' einbaue, dann vermeide ich damit jedenfalls die
Fehlermeldung von Windows beim Beenden (siehe unten).

Ich vermeide sie auch, wenn ich es (nur) irgendwo danach einbaue.  Ich
vermeide sie jedoch nicht, wenn ich es (nur) irgendwo davor einbaue:

----------8<----------
procedure exitscreen(joke:shortint);
var i : integer;
begin
  moff;
  attrtxt(7);
  if col.colborder<>0 then
    setborder16(0);
  clrscr;
  SetVideoMode(OrgVideomode);
{ screenlines:=25;
  setscreensize(false); }
  if deutsch then
    case joke of
      1 : cm_wl('Vielen Dank. Sie haben ein einfaches Pointprogramm sehr 
glücklich gemacht.');
      2 : cm_wl('Leider verloren.');
    end;
  hinweis('Vor vorletzter Anweisung');  <============ hier frühestens!
  if (res2anz(221)>0) and (getres2(221,1)<>'(dummy)') then begin
    writeln;
    for i:=1 to res2anz(221) do
      cm_wl(getres2(221,i));
    end;
  cm_wln;
end;
----------8<----------

Macht uns das jetzt irgendwie schlauer?  Irgendwas biegt 'hinweis()'
offenbar wieder gerade, was irgendwann vorher verbogen wurde?  Aber ich
hab das Gefühl, daß das nur ein Kurieren an Symptomen und nicht das
Beheben der eigentlichen Ursache ist.

Wahrscheinlich versuche ich's nochmal mit writeln() statt hinweis().


        Michael
------------------------------------------------------------------------
FreeXP Support-Mailingliste
Support-List@freexp.de
http://www.freexp.de/cgi-bin/mailman/listinfo/support-list

Antwort per Email an