python import .dll, скомпилированный .net

я использовал jscript.net для создания файла .dll. в качестве теста я могу успешно вызвать функцию hello() в другой программе jscript.net, которая скомпилирована как .exe.

НО мой вопрос: как я могу вызвать функцию в python?

эта dll может быть успешно загружена с помощью ctypes.windll.LoadLibrary("power.dll"). однако имя функции не может быть найдено...

я сделал несколько тестов моего файла dll.

я использовал «dumpbin / all», чтобы проверить свою dll, но я не могу найти никаких пригодных для использования имен функций. это странно...

код моего файла dll в jscript.net
"""""""""""""""""""""""

import System;
import System.Console;
import System.IO;

package power{

public class testp {

        function hello (){

        var time_1 = DateTime.Now;

        for (var i =0; i<10000; i++){

            Console.WriteLine ("hello world!");

        };

        var time_2 = DateTime.Now;

        Console.WriteLine (time_2-time_1);

        };

    };

};

""""""""""""""""""""""


person user3224611    schedule 22.01.2014    source источник


Ответы (1)


Да, вы можете использовать любую DLL в python, если сделаете код открытым для COM. Я только бегло просмотрел его, но этот урок, кажется, дает хороший пример того, как это сделать:

http://www.codeproject.com/Articles/73880/Using-COM-Objects-in-Scripting-Languages-Part-2-Py

person Duncan Finney    schedule 22.01.2014