'WinMain' 的注释不一致

Inconsistent annotation for 'WinMain'

我正在努力让我的代码尽可能完美,并且我已经清除了所有错误和(其他)警告。我只剩下这两个:

Warning C28253  Inconsistent annotation for 'WinMain': _Param_(2) has 'SAL_null(__no)' on this instance.
Warning C28252  Inconsistent annotation for 'WinMain': _Param_(2) has 'SAL_null(__maybe)' on the prior instance.

这是我的 WinMain 函数

int CALLBACK WinMain( _In_ HINSTANCE hInstance, _In_ HINSTANCE hPrevInstance, _In_ LPSTR lpCmdLine, _In_ int nCmdShow );

为什么我的第二个参数 HINSTANCE hPrevInstance 没有正确注释,尽管它是使用 _In_ 信息直接从 MSDN 中提取的?

这是因为 hPrevInstance 参数实际上有 _In_opt_ 注释而不仅仅是 _In_.