zoukankan      html  css  js  c++  java
  • 用vc生成可被python调用的dll文件

    前提已经有.c 和.i文件

    用swid编译了.i文件生成了wrap.c文件和.py文件

    vc创建dll工程

    将.h加入到头文件中.c文件和wrap.c文件添加到源文件中 将.i文件添加到工程目录下
    Tools->Options->Directories中修改include 和lib 添加python里的include 和libs
    把libspython27.lib复制一份 并且改名为python27_d.lib
    修改 pyconfig.h (我只修改了前两样 后面没修改也成功了)
    #ifdef _DEBUG
    # define Py_DEBUG
    #endif
    为#ifdef _DEBUG
    //# define Py_DEBUG
    #endif
    修改
    # ifdef _DEBUG
    # pragma comment(lib,"python24_d.lib")
    # else
    # pragma comment(lib,"python24.lib")
    # endif /* _DEBUG */

    # ifdef _DEBUG
    # pragma comment(lib,"python24.lib")
    # else
    # pragma comment(lib,"python24.lib")
    # endif /* _DEBUG */
    修改object.h
    修改
    #if defined(Py_DEBUG) && !defined(Py_TRACE_REFS)
    #define Py_TRACE_REFS
    #endif

    #if defined(Py_DEBUG) && !defined(Py_TRACE_REFS)
    // #define Py_TRACE_REFS
    #endif
    把生成的name.dll文件改为_name.pyd 将前面的.py和_name.pyd文件放到一个文件中(我试的时候只有.pyd文件就可以)
    新建一个test文件:
    import name
    aa = name.somefunction()
    print(aa)

  • 相关阅读:
    ansible常用的一些模块
    使用jmx监控tomcat
    snmp的监控
    Selenium 入门到精通系列:六
    Selenium 入门到精通系列:五
    Selenium 入门到精通系列:四
    Selenium 入门到精通系列:三
    Selenium 入门到精通系列:二
    Selenium 入门到精通系列:一
    Python 发邮件例子
  • 原文地址:https://www.cnblogs.com/dltts/p/6033475.html
Copyright © 2011-2022 走看看