Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/160.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ MingW缺少Win32 Crypto API中的某些函数_C++_Winapi_Cryptography_Mingw - Fatal编程技术网

C++ MingW缺少Win32 Crypto API中的某些函数

C++ MingW缺少Win32 Crypto API中的某些函数,c++,winapi,cryptography,mingw,C++,Winapi,Cryptography,Mingw,我需要使用Win32 Crypto API中的一些函数,例如CryptQueryObject。问题是,我还需要用MingW编译我的程序,其中包含的加密库缺少一些我需要的函数,比如前面提到的CryptQueryObject。我尝试复制相关的C头定义,这样程序现在就可以编译了,但在链接时它失败了,出现了未定义的引用错误(因为mingw的crypt32.dll没有实现某些函数)。我尝试链接C:\Windows\System32\crypt32.dll,但它仍然返回链接错误 有没有办法在mingw中使用

我需要使用Win32 Crypto API中的一些函数,例如CryptQueryObject。问题是,我还需要用MingW编译我的程序,其中包含的加密库缺少一些我需要的函数,比如前面提到的CryptQueryObject。我尝试复制相关的C头定义,这样程序现在就可以编译了,但在链接时它失败了,出现了未定义的引用错误(因为mingw的crypt32.dll没有实现某些函数)。我尝试链接C:\Windows\System32\crypt32.dll,但它仍然返回链接错误


有没有办法在mingw中使用整个加密API?

您需要动态链接到crypt32.dll。您可以在运行时执行此操作 使用Win32 API函数+,或在编译时使用

对于运行时绑定,MSDN有一个


编辑:如果您需要一组不在MinGW标题中的API函数,请转到导入库。

您需要动态链接到crypt32.dll。您可以在运行时执行此操作 使用Win32 API函数+,或在编译时使用

对于运行时绑定,MSDN有一个


编辑:如果您需要MinGW标题中没有的一组API函数,请转到导入库。

我也遇到了同样的问题。下载并安装

现在调用链接器:

gcc -L"C:\Program Files (x86)\Windows Kits\10\Lib\10.0.14393.0\um\arm" -o "Test"  ./main.o -lcrypt32

我也有同样的问题。下载并安装

现在调用链接器:

gcc -L"C:\Program Files (x86)\Windows Kits\10\Lib\10.0.14393.0\um\arm" -o "Test"  ./main.o -lcrypt32

另一个很好的例子是文件/crypto/rand/rand_-win.ca中的openssl库。另一个很好的例子是文件/crypto/rand/rand_-win.cw中的openssl库。为什么不下载?当然你可以从MinGW下载。为什么不下载?你当然可以用MinGW的。