What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal
RebornBuddy Forums

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

Помогите, пожалуйста

sholimi

New Member
Joined
Oct 25, 2014
Messages
70
Всем привет!
Пожалуйста помогите!
Не могу корректно закрыть форму при закрытии плагина - виснет АБ и выкидывает из АА.
Итак есть какая то форма, стартует при запуске плагина

form = new FormDist(this);
formThread = new Thread(RunForm);
formThread.Start();

В ее конструкторе
public FormDist(Core core)
{
InitializeComponent();
this.core = core;

thread = new Thread(<какой то метод с бесконечным циклом>);
thread.Start();
}
В теле плагина (в Core) открытие формы
public void RunForm()
{
try
{
Application.Run(form);
}
catch (System.ComponentModel.Win32Exception) { }
catch (Exception error)
{
Log("error (" + error.GetType() + ") on form: " + error.Message);
}
}
Все отрабатывает как мне нужно, но когда пытаюсь закрыть форму или сам плагин - краш АБ, есть подписка при закрытиии формы и там
try
{
if (form != null)
{
form.Invoke(new Action(() => form.Close()));
form.Invoke(new Action(() => form.Dispose()));
}

Application.Exit();
}
catch (InvalidOperationException) { }
catch (Exception error)
{
Log("Form Close Exception 2: " + error.Message);
}

try
{
formThread.Abort();
}
catch (ThreadAbortException) { }
catch (Exception error)
{
Log("Form Abort Exception: " + error);
}
Это не помогает - АБ все равно виснет и выкидывает из АА
Что я делаю не так ????? Помогите, пожалуйста!
 
Back
Top