ImmGetCompositionFontでフォント名の取得がうまかいかないとのことですが
考えられる個所はAPI関数名ではないかと推測します。
/*エイリアスにはANSI系関数を指定する
/*IMMGETCOMPOSITIONFONT lib "imm32.dll" Alias "ImmGetCompositionFontA" (
LOGFONT構造体の lfFaceName メンバの定義はF-BASICでは次のようになります。
#define LF_FACESIZE 32
type LOGFONT
lfHeight As Long
lfWidth As Long
〜〜〜(省略)〜〜〜
lfFaceName(LF_FACESIZE-1) as Byte
end type
このように通常はByte型ですが、F-BASICでは扱いづらいので、String*n型に
することも可能だと思います。 (提示されたソースではそのようで)