BCRYPT_HASH_FUNCTION_TABLE在哪里定义?

时间:2016-04-29 08:13:07

标签: c visual-studio

我正在尝试在不使用Visual Studio的情况下重现Visual Studio构建,到目前为止,我已经能够找到所有头文件的存储位置(Windows SDK,Visual Studio版本等),这要归功于{{ 3}}

但是,Microsoft Cryptography API中有一个我找不到的特定定义:

BCRYPT_HASH_FUNCTION_TABLE

即使在#define BCRYPT_HASH_FUNCTION_TABLEtypedef * BCRYPT_HASH_FUNCTION_TABLE上搜索也没有结果。

我的VS项目使用该定义,VS编译它,因此它设法找到该类型的定义。但是,我无法在链接的SO问题所指示的任何包含的目录中找到它,所以我看到两种可能性:

  1. 还有其他包含我不知道的目录;
  2. MSVC有一些CNG相关类型的内置定义。
  3. 如果是前者,我怎么能找到这些额外的目录?

    我确实在SDK include目录中找到了一个bcrypt.h文件,其中包含几个与bcrypt相关的定义,但不包含这个特定的typedef。

    额外细节:

    • 我的磁盘中唯一名为bcrypt.h的文件是我从安装Windows SDK 7获得的文件,它没有这样的定义;
    • 我发现questions like this在线确定了它,但我不知道这是哪个版本,我怎么能自己得到它,总体而言,MSVC如何使用不包含的标头编译我的文件这样的定义。

1 个答案:

答案 0 :(得分:0)

如果它编译但未定义,则不使用它。

它可能位于#ifdef'的部分中,因此您可以看到它,但不会使用/编译。