AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Hilfe beim Übersetzten von C in Delphi

Ein Thema von simjoh · begonnen am 23. Mär 2007 · letzter Beitrag vom 1. Apr 2007
Antwort Antwort
Robert Marquardt
(Gast)

n/a Beiträge
 
#1

Re: Hilfe beim Übersetzten von C in Delphi

  Alt 24. Mär 2007, 07:24
1. Aufpassen. Bei Write gibt man das erste Element des Puffers an das man schreiben will, nicht den Puffer selbst. Die Deklaration von Write ist mit "const Buffer" fuer den Parameter was heisst bei der Parameteruebergabe addiert Delphi eine Indirektion, sprich uebergibt die Adresse des Elementes.
Delphi-Quellcode:
if (GL_Add6MaxTag=true) then
begin
  RMIndex:=GetIndexToNextSubString(Buffer,' (Real Money)',BufferLen);
  if (RMIndex>=0) then
  begin
    OutStream.write(Buffer[0], RMIndex);
    OutStream.write(' (6 max)', strlen(' (6 max)')); // Add the 6-max tag.
    OutStream.write(Buffer[RMIndex], BufferLen - RMIndex);
  end
  else
  begin
    OutStream.write(Buffer[0], BufferLen); // If can't find, just write as normal.
  end;
end
else
begin // Write the rest of the buffer.
    OutStream.Write(Buffer[0], BufferLen);
end;
2.
Delphi-Quellcode:
if MBI.RegionSize > BufferLen then
begin
  // Realloziierung des Puffers
  if Buffer <> nil then
    FreeMem(Buffer);
  GetMem(Buffer, MBI.RegionSize);
  BufferLen := MBI.RegionSize;
  // sicherheitshalber den Puffer auf C Leerstring initialisieren
  Buffer[0] := #0;
end;
3. Bei "static unsigned int MinRegionSize=~0;" ist ~ das bitweise not. Die Zahl wird also auf alle Bits 1" gesetzt.
Delphi-Quellcode:
var
  MinRegionSize: Cardinal = not 0;
  // alternativ
  MinRegionSize: Cardinal = $FFFFFFFF;
Fuer den Rest habe ich gerade keine Zeit bei den Einzelheiten. Spaeter.

4. Letzlich nur ein Stringvergleich.
5. Hier geht es um die ParamStr, also die Parameter beim Programmaufruf.
6. var GL_Extention = 'hhf': string; GL_extention := ParamStr(I+1);
7. Das ist ein Thread. Da muss ein Delphi-Threadobjekt her.
8. Das ist das Hauptprogramm. Entspricht dem was du in einem .dpr findest. Es wird etwas angezeigt und dann nur der Thread gestartet der die Arbeit macht. Es ist uebrigens ein DOS-Box-Programm (aka Konsolenprogramm) was wir hier haben.
  Mit Zitat antworten Zitat
Antwort Antwort


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 00:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz