Einzelnen Beitrag anzeigen

Robert Marquardt
(Gast)

n/a Beiträge
 
#2

Re: c-spezialist .... Struktur -> Pascal

  Alt 3. Nov 2003, 14:46
Na das ist schon ein etwas heftigeres Ding.
Leider ist nicht alle noetige Info vorhanden.
my_bool fehlt und ausgesprochen wichtig hier ist das Betriebssystem.
Ich vermute Linux und deshalb sind die Funktionen cdecl und nicht stdcall.

Delphi-Quellcode:
type
  Tstrcoll = function(Param1: PByte; Param2: PByte): Integer; cdecl;
  Tstrxfrm = function(Param1: PByte; Param2: PByte; Param3: Integer): Integer; cdecl;
  Tstrnncoll = function(Param1: PByte; Param2: Integer; Param3: PByte; Param4: Integer): Integer; cdecl;
  Tstrnxfrm = function(Param1: PByte; Param2: PByte; Param3: Integer; Param4: Integer): Integer; cdecl;
  // der pchar im Original ist verdaechtig
  Tlike_range = function(Param1: PChar; Param2: Cardinal; Param3: PChar; Param4: Cardinal;
    Param5: PChar; Param6: PChar; Param7: PCardinal; Param8: PCardinal): my_bool; cdecl;
  Tismbchar = function(Param1: PChar; Param2: PChar): Integer; cdecl;
  Tismbhead = function(Param1: Cardinal): my_bool; cdecl;
  Tmbcharlen = function(Param1: Cardinal): Integer; cdecl;

  PCHARSET_INFO = ^CHARSET_INFO; // den braucht man eh immer
  CHARSET_INFO = record // moeglicherweise packed record
    number: Cardinal;
    name: PChar;
    ctype: PByte;
    to_lower: PByte;
    to_upper: PByte;
    sort_order: PByte;

    strxfrm_multiply: Cardinal;
    strcoll: Tstrcoll;
    strxfrm: Tstrxfrm;
    strnncoll: Tstrnncoll;
    strnxfrm: Tstrnxfrm;
    like_range: Tlike_range;

    mbmaxlen: Cardinal;
    ismbchar: Tismbchar;
    ismbhead: Tismbhead;
    mbcharlen: mbcharlen;
  end;
  Mit Zitat antworten Zitat