See the code for the 10 places where 
db needs to be replaced with 
TCHAR    struct TEXTMETRIC
  tmHeight             dd ?
  tmAscent      dd ?
  tmDescent             dd ?
  tmInternalLeading  dd ?
  tmExternalLeading  dd ?
  tmAveCharWidth     dd ?
  tmMaxCharWidth     dd ?
  tmWeight          dd ?
  tmOverhang            dd ?
  tmDigitizedAspectX dd ?
  tmDigitizedAspectY dd ?
  tmFirstChar         TCHAR ?            ;<<<---- Variable character width
  tmLastChar           TCHAR ?            ;<<<---- Variable character width
  tmDefaultChar      TCHAR ?              ;<<<---- Variable character width
  tmBreakChar          TCHAR ?            ;<<<---- Variable character width
  tmItalic             db ?
  tmUnderlined          db ?
  tmStruckOut           db ?
  tmPitchAndFamily   db ?
  tmCharSet        db ?
ends
struct LOGFONT
  lfHeight      dd ?
  lfWidth       dd ?
  lfEscapement          dd ?
  lfOrientation    dd ?
  lfWeight           dd ?
  lfItalic      db ?
  lfUnderline           db ?
  lfStrikeOut           db ?
  lfCharSet     db ?
  lfOutPrecision   db ?
  lfClipPrecision  db ?
  lfQuality       db ?
  lfPitchAndFamily db ?
  lfFaceName         TCHAR 32 dup (?)     ;<<<---- Variable character width
ends
struct ENUMLOGFONT
  elfLogFont  LOGFONT
  elfFullName TCHAR 64 dup (?)         ;<<<---- Variable character width
  elfStyle    TCHAR 32 dup (?)            ;<<<---- Variable character width
ends
struct ENUMLOGFONTEX
  elfLogFont  LOGFONT
  elfFullName TCHAR 64 dup (?)               ;<<<---- Variable character width
  elfStyle    TCHAR 32 dup (?)            ;<<<---- Variable character width
  elfScript   TCHAR 32 dup (?)            ;<<<---- Variable character width
ends