0

UnmapDebugInformation でこの SAL 注釈の不一致を説明できる人はいますか?

MSDN ライブラリのドキュメントでは、DebugInfo パラメータは次のように渡されると注釈が付けられています

BOOL WINAPI UnmapDebugInformation(
    _In_ PIMAGE_DEBUG_INFORMATION DebugInfo
);

ただし、DbgHelp.h では、パラメーターは渡されたものとして注釈が付けられています。

BOOL IMAGEAPI UnmapDebugInformation(
    _Out_writes_(_Inexpressible_(unknown)) PIMAGE_DEBUG_INFORMATION DebugInfo
);

このパラメーターに_Out_SDK のように注釈が付けられるのはなぜですか?

(これが非推奨の機能であることは理解しています。SDK で使用されている SAL 注釈を理解したいと思っています。)

4

1 に答える 1

1

SAL 注釈は、MSDN のドキュメントや SDK の更新とは別に進化しています。MSDN の記事は古くなっている傾向があります。これは_In_、SDK のように注釈が付けられている可能性があります。私が入手した最も古いものはSDK v6.0で、__out_xcount(unknown).

渡された構造体は、リストが含まれていることを考えると、関数によって更新される可能性が高いと思われるため、表示されるのは単なるより良いバージョンです。これは、コード アナライザーにとってのみ重要です。

于 2012-12-07T01:24:00.663 に答える