使用Visual Studio 2008开发Python的C++扩展之准备步骤

  1. 在Visual Studio 2008的菜单 工具->选项,项目与解决方案->VC++目录,右边选择“包含文件”,添加Python安装路径里面的include目录;选择“库文件”,添加Python安装路径里面的libs目录
  2. 新建项目,项目类型选择C++的MFC DLL。注意项目名要全小写(其实只要最后生成的dll是全小写就可以了,这里为了方便起见)。这里举例项目名为"pytest"
  3. 删除除了"pytest.{cpp, h}"以外的所有.h 和.cpp
  4. 打开"pytest.h",删除所有东西。输入"include <Python.h>"
  5. 打开"pytest.cpp",删除所有东西除了include <pytest.h>这句
  6. 右击项目->属性,配置属性->C/C++->预编译头,将“创建/使用预编译头”选项设为“不使用预编译头”
  7. 继续在项目属性窗口,配置属性->链接器->输入,将“模块定义文件”的值删除;配置属性->链接器->常规,把“输出文件”的值中的"dll"替换为"pyd"

在pytest.cpp中插入以下代码模板:

 

代码
static PyObject*
invoke(PyObject *self, PyObject *args)
{
    char* cmdName, *dllName;

    PyObject *paraList;
        //example
    if(!PyArg_ParseTuple(args, "ssO", &dllName, &cmdName,&paraList)) //ParseTuple will raise error when parse fails
        return NULL;
    else
    {

    }

    
}



static PyMethodDef pytest_methods[] = {
    {"invoke", invoke, METH_VARARGS, "Invoke the function in DLL"},
    {NULL, NULL, 0, NULL}
};

PyMODINIT_FUNC initpytest()
{
    Py_InitModule("pytest", pytest_methods);
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值