C 无法使用针对windows的openssl库将X509证书中的信息提取到临时文件中

C 无法使用针对windows的openssl库将X509证书中的信息提取到临时文件中,c,visual-c++,openssl,x509,C,Visual C++,Openssl,X509,我正在Visual Studio 2010 Windows中编写此C代码。当执行在PEM_write_X509流/控制台被阻止,代码不继续。基本上,该函数从证书中提取信息并将其放入临时文件中。但死刑没有执行。该函数来自开放式SSL库。为什么有一个free()?这是C++,使用新< /COD>和删除< /代码>。另外,如果定义了x,它是有效的X509*?它是C代码。抱歉标记错误,是的,声明是正确的。x已定义为X509*因此,如果在fclose(fp)处设置断点,则该断点永远不会被命中?是。。我不知

我正在Visual Studio 2010 Windows中编写此C代码。当执行在
PEM_write_X509流/控制台被阻止,代码不继续。基本上,该函数从证书中提取信息并将其放入临时文件中。但死刑没有执行。该函数来自开放式SSL库。

为什么有一个
free()
?这是C++,使用<代码>新< /COD>和<代码>删除< /代码>。另外,如果定义了
x
,它是有效的
X509*
?它是C代码。抱歉标记错误,是的,声明是正确的。x已定义为X509*因此,如果在
fclose(fp)
处设置断点,则该断点永远不会被命中?是。。我不知道它是否与openssl初始化有关,我已经浪费了3个小时:(我猜,PEM_write_X509进入了一个无限循环。
if (!(fp = fopen(TEMP_STORE_CERTIFICATE, "w"))) {

    free(TEMP_STORE_CERTIFICATE);
    return 0;

  }

PEM_write_X509(fp, x);
fclose(fp);