我在Visual Studio 2010中包含了我的c ++项目的python脚本的使用,如CodeProject文章中所述:http://www.codeproject.com/Articles/11805/Embedding-Python-in-C-C-Part-I
在我尝试使用Visual Studio 2012编译项目之前,这工作正常。如果未安装2010,则使用2012编译它需要将平台工具集从v100更改为v110。更改工具集后,包含的“pyconfig.h”会给出一些包含错误,因为找不到文件“basetsd.h”(与python 2.7和3.3相同)。 pyconfig显示了一些#ifdef用于VS10的东西(我想到VS6)但是VS12的文件似乎丢失了:
#if defined(_MSC_VER) && _MSC_VER >= 1200
/* This file only exists in VC 6.0 or higher */
#include <basetsd.h>
#endif
如果我添加一些包含路径(Windows Toolkit)或删除include命令,它将编译,直到链接器找不到或打开“kernel32.lib”。但是,如果我为某些kernel32.lib添加一个lib路径,则所有python命令都将无法解析。
如何完成这项工作? Python和VS2012有什么问题?
答案 0 :(得分:0)
也许您的“Python.h”版本只与Visual Studio 2010兼容。我附加了一个声称是VS2012的“Python.h”链接,试一试,如果它解决了您的问题,请告诉我们。
答案 1 :(得分:0)
现在正在使用以下lib路径运行:
C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v7.1A \ Lib; C:\ Python27 \ libs
但我仍然不理解......