Написать код C++ на Python

348
26 февраля 2017, 08:58

Привет всем,имеется библиотека на .DLL и хочу его использовать на Python.
Библиотека DLL находится здесь.

Как можно правильно написать код, чтобы работало как на C++ в Python-е?

#include "stdafx.h"
     #include <iostream>
     using namespace std;
     #import "C:\D\mega_proj\COM_DLL\Ci2001A\Ci2001A\Ci2001A\Ci2001A\Debug\Ci2001A.dll"
     int _tmain(int argc, _TCHAR* argv[])
      {
     CoInitialize(0);
    try
    {
        Ci2001ALib::IIndicPtr p("Ci2001A.Indic");
        p->NumberOfCom = 1;
        p->Open();
        // Читаем данные
        p->Update();
        cout << p->Weight;
        cout << p->Stab;
        // Ждем пять сек.
        Sleep(5000);
        // Читаем данные
        p->Update();
        cout << p->Weight;
        cout << p->Stab;

        p->Close();
    }
    catch( _com_error &e )
    {
        MessageBox( 0, e.Description(), L"F", MB_OK );
        MessageBox( 0, e.ErrorMessage(), L"F", MB_OK );
    }
    CoUninitialize();
    return 0;
    }

Мой вариант кода:

from ctypes import cdll, create_string_buffer, WINFUNCTYPE, c_int
from ctypes.util import find_library
# Load DLL into memory.
hllDll =  cdll.LoadLibrary("c:\\Users\\bako\\PycharmProjects\\dllLibrary\\Ci2001A.dll")
inDicatorMode = create_string_buffer('Ci2001A.Indic')
READ ALSO
Использование умных указателей

Использование умных указателей

У меня в коде часто повторяется фрагмент:

328
MessageBox попадает в бесконечный цикл WinApi

MessageBox попадает в бесконечный цикл WinApi

Пишу простейший калькулятор с помощью WinApi, когда происходит деление на 0 нужно вывести MessageBox с ошибкойНо в калькуляторе есть функция auto-reresh,...

466
Найти отличное от других число

Найти отличное от других число

Есть последовательность различных int чиселНеобходимо эффективно найти любое int число, отличающееся от данных

425
C++ 17, std::experimental::any где?

C++ 17, std::experimental::any где?

Работаю в MSVC, набираю #include <experimental/ >, в выпадающем списке нет anyКак мне подключить этот хедер?

415