2014-09-19 5 views
0

Я пишу EA Addin и AFAIR Мне нужно зарегистрировать COM, но для этого мне нужно dll. Но у меня есть обычное приложение в WPF, и я хотел бы просто отделить запуск Addin и exe. Я хочу, чтобы EA использовал мой dll, чтобы начать мое основное приложение, но я не знаю, как передать Repository объект из dll в мое приложение, есть ли у вас какие-либо предложения? Или даже моя идея отделить dll и exe не так?Передача объекта из dll в exe

+0

Это, конечно, можно иметь Add-In запустить приложение, которое в свою очередь, подключается к репозиторию EA, как описано в мой ответ. Однако это необычно, но без дополнительной информации о вашем конкретном случае невозможно определить, подходит ли это или нет. – Uffe

ответ

1

Я решаю свою проблему другим, очень простым способом. У меня есть два проекта в моем решении DLL и EXE. Когда я нажимаю на MENUITEM, DLL выполнить это:

var app = new App(); 
app.InitializeComponent(); 
app.Run(); 
Window1.Repository = _repository; //I know static field is bad, but this is only example 

И это работа;)

1

Надстройка EA должна быть DLL.

Если вы хотите, чтобы надстройка, которую вы хотите сделать, запускает другое приложение, это достаточно просто: просто сделайте соответствующий системный вызов. Вместо передачи репозитория в приложение, пройдите Repository.ConnectionString и откройте приложение, используя Repository.OpenFile().

+0

Это была моя вторая идея, если я больше ничего не могу найти;) Но спасибо;) –

Смежные вопросы