發布vc調用Python的獨立運行程式

來源:互聯網
上載者:User

編譯Python指令碼產生可執行程式,可以通過py2exe編譯完成。

在VC中調用python時,可以結合py2exe,完成整個程式的獨立發布^_^

google.py:

#! /usr/bin/env python

import sys, webbrowser

def 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編譯為可執行程式:

目的是利用其中產生的python25.dll(這個所有對於所有的python指令碼都一樣吧)和library.zip(不同指令碼產生不同的庫檔案)。

二、發布VC編譯產生的程式時,需要以下檔案:

可執行程式:*.exe;

dll:python25.dll;

python指令碼:google.py;

庫檔案:python25.zip(將library.zip重新命名為python25.zip,程式預設調用這個名字的庫檔案)。

三、放到一個無python環境的機器中,測試成功鳥。

So Now,發行就緒調用python的VC程式了!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.