Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi RLINK32: Out of Memory! (https://www.delphipraxis.net/136217-rlink32-out-memory.html)

Johannes013 25. Jun 2009 21:17


RLINK32: Out of Memory!
 
Hi Leute,

bei mir erschein andauernd der Fehler:
Code:
[Fehler] RLINK32: Out of Memory!

Wie komme ich da raus?

Satty67 25. Jun 2009 21:45

Re: RLINK32: Out of Memory!
 
Beim compilieren?
Was hast Du alles als Ressourcen eingebunden, also auch Bilder im Form-Designer?

Johannes013 26. Jun 2009 10:27

Re: RLINK32: Out of Memory!
 
ja, nur eigene unit...:

Delphi-Quellcode:
unit Jojo;

interface

function LastPos(const SubStr, S: string): Integer;
{procedure Tone(Bit: TBitmap; r,g,b: Integer);}

implementation

function LastPos(const SubStr, S: string): Integer;   // Letztes Vorkommen-------
var
   i:Integer;
   j:Integer;
begin
   Result:=0;   // noch nicht gefunden
   i:=Length(S);
   j:=Length(SubStr);
   while (Result=0) and (i>=1) do
      begin
         if S[i]=SubStr[j] then // passt das Zeichen?
            begin
               Dec(j);      // nächstes Zeichen untersuchen
            end
         else
            begin
               j:=Length(SubStr);  // wieder mit letztem SubStr-Zeichen anfangen
            end;
         if j=0 then
            begin
               Result:=i; // gefunden
            end;
         Dec(i); // nächstes Zeichen
      end;
end;

// Tönung ------------------------------------------------------------------------
{procedure Tone(Bit: TBitmap; r,g,b: Integer);
type
  PixArray = array [1..3] of Byte;
var
  p: ^PixArray;
  h,w: Integer;
begin
  for h:=0 to Bit.Height-1 do
  begin
    p:= Bit.ScanLine[h];
    for w:=0 to Bit.Width-1 do
    begin
      if (round(p^[1] * ( 1 + b/100))<0) then p^[1]:=0 else
         if (round(p^[1] * ( 1 + b/100))>255) then p^[1]:=255
         else p^[1]:= round(p^[1] * ( 1 + b/100));
      if (round(p^[2] * ( 1 + g/100))<0) then p^[2]:=0 else
         if (round(p^[2] * ( 1 + g/100))>255) then p^[2]:=255
         else p^[2]:= round(p^[2] * ( 1 + g/100));
      if (round(p^[3] * ( 1 + r/100))<0) then p^[3]:=0 else
         if (round(p^[3] * ( 1 + r/100))>255) then p^[3]:=255
         else p^[3]:= round(p^[3] * ( 1 + r/100));
      Inc(p);
    end;
  end;
end;}

end.
???

Satty67 26. Jun 2009 19:14

Re: RLINK32: Out of Memory!
 
Zuerst mal, RLINK32.dll bindet die Ressouren in die compilierte EXE ein, also Bitmaps von Buttons oder TImages, die im Objektinspektor angegeben wurden etc. Alsoalles, was an "Daten" breits in der EXE vorhanden ist.

Das ganze ist kein Problem der Syntax des Quellcodes, also kein Programmierfehler im eigentlichen Sinn. (Höchstens falsche Verwendung von Ressourcen, aber das nur nebenbei).

Bei Delphi 5 gabe es eine fehlerhafte RLINK32.DLL, die ein schlechtes Speichermanagement hatte. Das kann man auf zwei Arten umgehen:

Zurückhaltung bei Verwendung der direkt in die EXE eingebundenen Resourcen, also weniger Bilder, Sounds etc. direkt in die Exe einbinden. Weniger Fremdkomponenten kann auch helfen.

oder

Austausch der RLink32.dll (ältere oder neuere Versionen sind OK, welche genau, hab ich inzw. aber vergessen)

Geh mal in den Ordner %Programme%\Borland\Delphi5\Bin und schau, welche Versions-Nummer die Datei RLINK32.dll bei Dir hat.

Johannes013 28. Jun 2009 16:31

Re: RLINK32: Out of Memory!
 
die hat: 4.0.10.10

aber ich ahbe weder bilder noch sounds eingebunden (und videos auch nicht).....:-(

Muetze1 28. Jun 2009 17:00

Re: RLINK32: Out of Memory!
 
Zitat:

Zitat von Satty67
Austausch der RLink32.dll (ältere oder neuere Versionen sind OK, welche genau, hab ich inzw. aber vergessen)

http://www.delphipraxis.net/internal...=832557#832557

Johannes013 30. Jun 2009 09:11

Re: RLINK32: Out of Memory!
 
danke, hat geklappt. :-)

Schaut mal glecih dort: http://www.delphipraxis.net/internal...054403#1054403


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:48 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