System.IO.FileNotFoundException在多项目解决方案中

时间:2019-02-14 17:53:11

标签: c# visual-studio-2017 multi-project

所以我已经在这个错误上停留了一个星期了,这非常令人沮丧

enter image description here

(无法加载文件或程序集“ Audio.Default.Switcher.Wrapper.dll”或其依赖项之一。找不到指定的模块)

我正在使用Visual Studio 2017,并且已经下载了the SoundSwitch project,并且一切正常。我可以运行“ SoundSwitch”而不会出现任何错误。

该解决方案的工作方式(据我所了解)是“ SoundSwitch” C#项目是“主”,它引用了“ Audio.Default.Switcher.Wrapper”以及“ SoundSwitch”。 UI.UserControls”

“ Audio.Default.Switcher.Wrapper”作为对“ AudioDefaultSwitcher”的引用

  • “ Audio.Default.Switcher.Wrapper”和“ AudioDefaultSwitcher”似乎都可以编译为.dll文件
  • “ SoundSwitch.UI.UserControls”无法启动,用于显示我猜想的东西
  • “ SoundSwitch”是唯一可启动的项目(当然不包括我的项目)

enter image description here

K005_test是我的项目,我已经添加了它,并且它具有(仅)对“ SoundSwitch”的引用,并且我试图使用K005_test中的SoundSwitch项目中的功能。到目前为止,我的K005_test项目仅包含

Program.cs (顺便说一下我在哪里得到的错误)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace K005_test
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1()); //Exception thrown here
        }
    }
}

Form1.cs (我将代码放入测试中的地方)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace K005_test
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("This is a test");
            var test = SoundSwitch.Model.AppModel.Instance.AvailablePlaybackDevices; //Error this line exists
        }
    }
}

当我运行我的K005_test项目时,它会编译并正常运行,除非我单击按钮,然后出现上面发布的错误。消息框也不会打开。

到目前为止,我已经尝试过:

  • 将所有内容翻转到“ x86”或“ Win32”,似乎与64位内容有关
  • 在K005_test中使用对“ Audio.Default.Switcher.Wrapper.dll”和“ SoundSwitch”的引用
  • 几乎到处复制“ Audio.Default.Switcher.Wrapper.dll”并祈祷神灵
  • 试图了解它在哪里查找“ Audio.Default.Switcher.Wrapper.dll”,但在查看异常详细信息时却找不到任何东西

没有任何帮助。

对于任何想知道的人,我都在这里上传了我的整个项目文件夹

https://drive.google.com/open?id=1OABjDiZyF0B-1-b15_9lzMrPZ4UpyKqU

0 个答案:

没有答案