Я пытаюсь создать COM DLL-объект из приложения WPF , чтобы иметь возможность открыть его из другого приложения.
Мне удалось успешно создать COM-объект как отдельный проект в моем решении, и я создал тестовую функцию, чтобы проверить, работает ли он. Итак, COM-объект успешно зарегистрирован, и я могу его использовать.
Моя проблема в том, что, когда я пытаюсь использовать COM-объект из python и вызывать функцию, которая запускает главное окно, я получаю следующую ошибку, связанную с entityframework:
"Не удалось загрузить файл или сборку" EntityFramework, версия = 6.0.0.0, Culture = нейтральный, PublicKeyToken = b77a5c561934e089 'или одна из его зависимостей. Системе не удалось найти указанный файл. "
Это код:
TraceIt.App app = new TraceIt.App();
app.InitializeComponent();
TraceIt.MainWindow mw = new TraceIt.MainWindow();
Я также пытался загрузить сборку из файла .exe приложения, но получаю ту же ошибку:
FileStream fs = new FileStream(@"D:\tool\Common\TraceIt Ver 1.7.0\TraceIt.exe", FileMode.Open);
BinaryReader br = new BinaryReader(fs);
byte[] bin = br.ReadBytes(Convert.ToInt32(fs.Length));
fs.Close();
br.Close();
Assembly a = Assembly.Load(bin);
Type myType = a.GetType("TraceIt.App");
MethodInfo method = a.EntryPoint;
if (method != null)
{
object o = a.CreateInstance(method.Name);
method.Invoke(o, null);
}
Из этого сообщения об ошибке я понимаю, что мне нужно как-то встроить сборку EF в мою COM DLL. Это верно?