Python使用pythonnet模块无法导入C#DLL库

时间:2020-04-17 02:36:20

标签: python c#

这是C#库代码:(保存到 PyLibray.dll

using System;
using System.Diagnostics;

namespace PyLibray
{
    class Voice
    {
        public void Beep(int freq, int duration)
        {
            Console.Beep(freq, duration);
        }
        public void NormalBeep()
        {
            Console.Beep();
        }
        //https://www.cnblogs.com/Microblue/archive/2010/09/21/2406704.html
        public void Asterisk()
        {
            System.Media.SystemSounds.Asterisk.Play();
        }
        public void Exclamation()
        {
            System.Media.SystemSounds.Exclamation.Play();
        }
        public void Hand()
        {
            System.Media.SystemSounds.Hand.Play();
        }
        public void Question()
        {
            System.Media.SystemSounds.Question.Play();
        }
        public void playWaveAudio(string path, bool is_looping = false)
        {

            System.Media.SoundPlayer sp = new System.Media.SoundPlayer();
            sp.SoundLocation = @path;
            if (is_looping)
            {
                sp.PlayLooping();
            }
            else
            {
                sp.Play();
            }

        }



}

此代码编写一个名称空间 PyLibray ,并定义了一些诸如播放语音和提示音之类的功能 人们说应该这样写,但是我的机器出了点问题!

这是Python代码:

import clr

clr.AddReference('PyLibray')

import PyLibray
instance=PyLibray.Voice();
instance.NormalBeep();

但这是错误的!

Traceback (most recent call last):
  File "1.py", line 5, in <module>
    import PyLibray
ModuleNotFoundError: No module named 'PyLibray'

0 个答案:

没有答案