Autor Beitrag
Radioactive
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 179

Win 98, Win XP Home SP2
D3 Prof, D7 Pers, D2005 Pers
BeitragVerfasst: Do 24.02.05 18:06 
Ich habe im Forum öfters von KOL gehört und mich schließlich dazu entschlossen, es auch mal auszuprobieren. Gesagt getan. Ich habs mir dongeloaded und will ein Testprogramm starten, da hagelt es Fehlermeldungen (die nichts mit meinem Quelltext zu tun haben):

[Fehler] SysUtils.pas(2170): Der linken Seite kann nichts zugewiesen werden
[Fehler] SysUtils.pas(2170): Der linken Seite kann nichts zugewiesen werden
[Warnung] SysUtils.pas(5492): Symbol 'RaiseList' ist veraltet
[Warnung] SysUtils.pas(5492): Symbol 'RaiseList' ist veraltet
[Warnung] SysUtils.pas(5492): Symbol 'RaiseList' ist veraltet
[Warnung] SysUtils.pas(5492): Symbol 'RaiseList' ist veraltet

Die ersten beiden Meldungen sind ja noch ganz leicht wegzubekommen, indem man das const (erste Zeile) in ein var verwandelt. Die Warnungen werden dann auch ignoriert.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
const
  ExitProcList: PExitProcInfo = nil;

procedure DoExitProc;
var
  P: PExitProcInfo;
  Proc: TProcedure;
begin
  P := ExitProcList;
  ExitProcList := P^.Next;
  ExitProc := P^.SaveExit;
  Proc := P^.Proc;
  Dispose(P);
  Proc;
end;


Doch jetzt kommts erst richtig:
[Fataler Fehler] SysUtils.pas(3696): Unit Variants wurde mit einer unterschiedlichen Version von SysUtils.EVariantError complimiert

Wenn man auf die Fehlermeldung doppelklickt, wird die letzte Zeile als Fehlerhaft angesehen.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
{ String formatting routines }

procedure FormatError(ErrorCode: Integer; Format: PChar; FmtLen: Cardinal);
const
  FormatErrorStrs: array[0..1of PResStringRec = (
    @SInvalidFormat, @SArgumentMissing);
var
  Buffer: array[0..31of Char;
begin
  if FmtLen > 31 then FmtLen := 31;
  if StrByteType(Format, FmtLen-1) = mbLeadByte then Dec(FmtLen);
  StrMove(Buffer, Format, FmtLen);
  Buffer[FmtLen] := #0;
  ConvertErrorFmt(FormatErrorStrs[ErrorCode], [PChar(@Buffer)]);
end;

procedure FormatVarToStr(var S: stringconst V: Variant);
begin
  S := V;
end;

// ...


Es kann doch wohl nicht ernsthaft sein, dass KOL solche Fehler produziert. Man sollte doch meinen, die kennen sich aus. Also, was soll ich machen?
(Ich benutze Delphi 7 Personal (Build 4.453) auf einem Windows XP Home System)

_________________
Radioactive
"Wer scrollt, verliert!" Matthias Stein, Informatiklehrer am GG
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Do 24.02.05 18:26 
das liegt an der sysutils pas. hast du die getweakte version in verwendung oder die originale ?

ich löse diese probleme im normalfall indem ich den verweis auf die sysutils.pas, die probleme erzeugt, kurzzeitig aus dem bibliothekspfad entferne, und nach der kompilierung wieder zurückstelle.
Radioactive Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 179

Win 98, Win XP Home SP2
D3 Prof, D7 Pers, D2005 Pers
BeitragVerfasst: Do 24.02.05 20:37 
Ich habe mir von der KOL Homepage (bonanzas.rinet.ru/) den Installer samt allem heruntergeladen. Das mit dem SysUtils rausnehmen ist ne Möglichkeit.

_________________
Radioactive
"Wer scrollt, verliert!" Matthias Stein, Informatiklehrer am GG
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Do 24.02.05 20:56 
den installer hat roller gemacht und ist alles andere als perfekt. wenn du länger mit KOL arbeitest wirst du dich daran gewöhnen dass du im bibliothekspfad einiges umstellen musst.
die günstigste lösung ist IMHO:

-ein KOL-Ordner, darin kol, mck, objects, classes und sonstige Kleinkomponenten <- der steht fix in deinem Bib.pfad
-ein system unterordner für die jew. delphi version, beinhaltet system und sysutils

die 2 einträge ganz vorne im bib.pfad, dann kannst du sie schnell rausnehmen um irgendeine VCL-Kompo zu installieren und nachher wieder reinpasten.
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Do 24.02.05 21:14 
ahja, und nochwas. bei dem installer von roller liegt auch in dem ordner indy die sysutils.pas drin rum, was zu fehlern führen kann, da der pfad standardmässig dabei ist.
Radioactive Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 179

Win 98, Win XP Home SP2
D3 Prof, D7 Pers, D2005 Pers
BeitragVerfasst: Do 24.02.05 23:08 
Ich habe es jetzt mal ohne Installer gemacht, und da klappt alles bestens.
Danke!
Was heißt IMHO?

_________________
Radioactive
"Wer scrollt, verliert!" Matthias Stein, Informatiklehrer am GG


Zuletzt bearbeitet von Radioactive am Fr 25.02.05 16:52, insgesamt 1-mal bearbeitet
retnyg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2754

SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
BeitragVerfasst: Do 24.02.05 23:09 
in my humble opinion