نمایش نتایج 1 تا 1 از 1

نام تاپیک: استفاده تعاملی c , python

  1. #1

    استفاده تعاملی c , python

    در جریان یک پروژه نیاز داشتم تا کدهای python را مثل یک dll در برنامه دیگر استفاده کنم برای انجام اینکار می توان از هدر python.h استفاده کرد که در پوشه pythonXX\include قرار دارد استفاده کنید.
    کد مثال آن هم:
    #include<Python.h>int main(int argc, char*argv[]){
    Py_Initialize();
    PyRun_SimpleString("import mymodule");
    .foo()PyRun_SimpleString("mymodule");
    Py_Finalize(); return 0; }




    اگر از tcc برای کامپال استفاده می کنید باید ابتدا فایل def را بسازید

    tiny_impdef.exe c:\WINDOWS\system32\pythonXX.dll


    سپس آن را جهت کامپایل استفاده کنید:
    tcc tiny.c pythonXX.def -IC:\PythonXX\include -LC:\PythonXX\libs
    همچنین اگر بخواهید از توابع c نوشته شده در کد واسط در python بهره ببرید کافی است از کتابخانه ctypes.CDLL استفاده کرده و هندل فایل فراخواننده را بدست آورید سپس می توانید توابع export شده را فراخوانی کنید.جهت export شدن یک فایل هم باید در کد c می توانید از پیشوند PyMODINIT_FUNC استفاده کنید.
    PyMODINIT_FUNC foo(void)
    آخرین ویرایش به وسیله m.j_banitaba : پنج شنبه 05 تیر 1393 در 07:52 صبح

تاپیک های مشابه

  1. آموزش: استفاده از SQLite در Python
    نوشته شده توسط Felony در بخش دیگر زبان های اسکریپتی
    پاسخ: 3
    آخرین پست: سه شنبه 24 اردیبهشت 1398, 11:59 صبح
  2. حرفه ای: استفاده از Windows 32 API از Python
    نوشته شده توسط r00tkit در بخش دیگر زبان های اسکریپتی
    پاسخ: 0
    آخرین پست: یک شنبه 27 آذر 1390, 09:36 صبح
  3. پاسخ: 2
    آخرین پست: سه شنبه 22 مرداد 1387, 19:30 عصر
  4. استفاده از BatchMove رو توضیح بدین لطفا
    نوشته شده توسط Gladiator در بخش برنامه نویسی در Delphi
    پاسخ: 5
    آخرین پست: دوشنبه 15 آبان 1385, 20:53 عصر
  5. استفاده از nmsmtpبرای فرستادن email
    نوشته شده توسط sahar8010 در بخش توسعه نرم افزارهای تحت شبکه
    پاسخ: 4
    آخرین پست: شنبه 09 فروردین 1382, 01:01 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •