PNACL——使用 winscard 库

PNACL – using winscard lib

我正在开发可与智能卡配合使用的便携式本机客户端应用程序。为此,我想将 winscard 库包含到我的项目中。 目前我在编译阶段失败了。

我在源文件中添加了一行

#include <winscard.h>

和其他包含目录中的路径

C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v7.1A \

我收到一个错误

C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v7.1A \ Include \ windows.h (151,10): fatal error: 'excpt.h' file not found

然后我添加了一个路径到excpt.h

C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ include

我收到以下错误

1> chromesign.cc 1> C:\Dev\Lib\nacl_sdk\vs_addin\examples\chromesign\In file included from chromesign.cc(27): 1> C:\Dev\Lib\nacl_sdk\pepper_43\include\ppapi\cpp\instance.h(11):'In file included from C' 1> C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\map(6):'In file included from C' 1> C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xtree(6):'In file included from C' 1> C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xfunctional(6):'In file included from C' 1> C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\cstdlib(5):'In file included from C' 1> C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\yvals.h(6):'In file included from C' 1>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(44,2): error : ERROR: Only Win32 target supported! 1>NACLCOMPILE : #error error : Only Win32 target supported!

有谁知道如何修复此错误或以其他方式在 PNACL 应用程序中使用 winscard 库?

windows.h 是一个 Windows-specific header。 PNaCl 不支持此类 header,因为它必须是可移植的并且可以跨操作系统工作,同时保护用户免受恶意/错误 .pexe 文件的侵害。

winscard 本身是 Windows 特定的,也不会工作。有 proposals 使从浏览器访问智能卡成为可能。我建议先去那里看看。您的问题的答案:这在 PNaCl 中不起作用 as-is。

不过,如果 native messaging 的限制符合您的需要,您可以考虑使用它。