1

我在 Visual Studio 2010 中为我的 c++ 项目使用了 python 脚本,如 CodeProject 文章中所述:http: //www.codeproject.com/Articles/11805/Embedding-Python-in-CC-Part-I

在我尝试使用 Visual Studio 2012 编译我的项目之前,这一切正常。如果未安装 2010,要使用 2012 编译它,需要将平台工具集从 v100 更改为 v110。更改工具集后,包含的“pyconfig.h”给出了一些包含错误,因为找不到文件“basetsd.h”(与 python 2.7 和 3.3 相同)。pyconfig 显示了一些适用于 VS10 的 #ifdef(我认为是 VS6),但 VS12 的文件似乎丢失了:

#if defined(_MSC_VER) && _MSC_VER >= 1200
/* This file only exists in VC 6.0 or higher */
#include <basetsd.h>
#endif

如果我添加一些包含路径(Windows 工具包)或删除它编译的包含命令,直到链接器找不到或打开“kernel32.lib”。但是,如果我为一些 kernel32.lib 添加一个 lib 路径,所有 python 命令都将无法解析。

如何得到这份工作?Python 和 VS2012 有什么问题?

4

2 回答 2

0

也许您的“Python.h”版本仅与 Visual Studio 2010 兼容。我附上了一个声称适用于 VS2012 的“Python.h”链接,请尝试一下,如果它解决了您的问题,请告诉我们。

http://pytools.codeplex.com/releases

于 2013-07-29T17:40:47.123 回答
0

它现在使用以下库路径运行:

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib;C:\Python27\libs

但是我还是不明白...

于 2013-07-30T10:03:59.227 回答