2012-01-15 9 views
3

ShlObj.pas(デルファイXEのように)行9922:あなたはこれを聞いてなぜ私はこれが可能に関連する背景を概説すると思うので、ここでデビッドHeffernanのさんのコメントに答えるなぜこのコードはDISTINCT型を宣言していますか?

type 
    BFFCALLBACK = function(Wnd: HWND; uMsg: UINT; lParam, lpData: LPARAM): Integer stdcall; 
    TFNBFFCallBack = type BFFCALLBACK; 
    {$EXTERNALSYM BFFCALLBACK} 

質問です。 Windows API起点のコールバックルーチンの手続き型は、型エイリアスとして宣言されています(あなたは、標準API名+ "Pascalised"エイリアス、または逆の場合もあります)。例は、Windows.PIMAGE_TLS_CALLBACK,ShlObj.LPFNDFMCALLBACKなどである。上記の型宣言は例外です。その理由は私が尋ねる理由:-)

+0

パスカル型識別情報のような微妙な問題については、適切なタグを提示してください。 – OnTheFly

+0

私はdelphiとdelphi-xeのタグがうまくいっていると言います。私は他のタグが今まで誰にでも助けてくれるとは思っていません。 –

+1

あなたはそのユニットのどこにでも別のタイプの使用を見ますか?またはWindows.pas?私が推測するFARPROCから変更を加える! –

答えて

1

これは、BFFCALLBACKの代わりにTFNBFFCallBackを使用するように強制する方法です。エイリアスであれば、ブラウズ情報構造のいずれかに使用できます。別のプラットフォームでは、TFNBFFCallBackはBFFCALLBACKとは異なるものを指すことがあります。

関連する問題