Так что я застрял на этой ошибке в течение хорошей недели, и это очень расстраивало
(невозможно загрузитьфайл или сборка 'Audio.Default.Switcher.Wrapper.dll' или одна из его зависимостей. Указанный модуль не найден)
Я работаю с Visual Studio 2017 и скачал проект SoundSwitch , и все работает отлично.Я могу запустить «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" - единственный запускаемый проект (конечно, не считая моего)
Тест K005_ МОЙ проект, я имеюдобавил его, и он имеет ссылки (только) на "SoundSwitch", и я пытаюсь использовать функции из проекта SoundSwitch внутри K005_test.И до сих пор мой проект 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-битным
- Использование ссылок на «Audio.Default.Switcher.Wrapper.dll» и «SoundSwitch» в K005_test
- копия «Audio.Default.Switcher.Wrapper.dll»почти везде и молясь богам
- Пытаясь понять, где он ищет «Audio.Default.Switcher.Wrapper.dll», но я не смог ничего найти, когда смотрел в деталях исключения
Ничего не помогло.
Для всех, кто интересуется, я загрузил всю папку проекта здесь
https://drive.google.com/open?id=1OABjDiZyF0B-1-b15_9lzMrPZ4UpyKqU