I have to go out for now, but does this look like it's on the right path?
Type TLogFont Field lfHeight:Long Field lpWidth : Long Field lfOrientation : Long Field lfWeight : Long Field lfItalic : Byte Field lfStrikeOut : Byte Field lfCharSet : Byte Field lfOutPRecision : Byte Field lfClipPrecision : Byte Field lfQuality : Byte Field lfPitchAndFamily : Byte Field lfFaceName :Byte Ptr End Type Type TChooseFontStruct Field StructSize : Int Field Owner:Int Field HDC : Int Field LogFont : TLogFont Ptr Field iPointSize: Int Field Flags : Int Field rgbColors : Int Field lCustData : Int Ptr Field lpfnHook() Field lpTemplateName : Byte Ptr Ptr Field hInstance : Int Field lpszStyle$z Ptr Field nFontType : Int Field ___MISSING_ALIGNMENT__:Int Field nSizeMin:Int Field nSizeMax:Int End Type Extern "Win32" Function ChooseFontA:Int(lpcf:TChooseFontStruct Ptr) End Extern