vc调用Python库的运行程序

来源:互联网 发布:知乎 编 专栏 编辑:程序博客网 时间:2024/05/17 01:25

编译Python脚本生成可执行程序,可以通过py2exe编译完成。

在VC中调用python时,可以结合py2exe,完成整个程序的独立发布^_^

google.py:

#! /usr/bin/env pythonimport sys, webbrowserdef main(a):    url = "http://www.google.com/search?q=%s" % a    webbrowser.open(url)

VC源码(python路径等需要自己设置),本程序是通过调用python打开google搜索传入的关键字

#include int main(){    Py_NoSiteFlag = 1;    //避免出现“'import site' failed”的错误    Py_Initialize();    PyObject * pModule = NULL;    PyObject * pFunc = NULL;    pModule = PyImport_ImportModule("google");    //调用的文件名    pFunc= PyObject_GetAttrString(pModule, "main");    //调用的函数名       PyObject *arg;    arg = Py_BuildValue("(s)", "look");    //构造参数,关键字为“look”    PyEval_CallObject(pFunc, arg);    //调用函数    Py_Finalize();    getchar();    return 0;}

一、首先利用py2exe将google.py编译为可执行程序:

目的是利用其中生成的python27.dll(这个所有对于所有的python脚本都一样吧)和library.zip(不同脚本生成不同的库文件)。

二、发布VC编译生成的程序时,需要以下文件:

可执行程序:*.exe;

dll:python27.dll;

python脚本:google.py;

库文件:python27.zip(将library.zip重命名为python27.zip,程序默认调用这个名字的库文件)。

三、放到一个无python环境的机器中,测试成功。

现在,可以发布调用python的VC程序了!

0 0