Здравствуйте, TK, Вы писали:
TK>Здравствуйте, DragonFire, Вы писали:
DF>>Теперь я пишу так:
DF>>Та же самая ошибка вылезает... Никакого эффекта...
TK>Надо взять _Pointer, из него сделать объект и уже тогда дергать. А так, не удивительно, что вылезает — ничего ведь не изменилось...
Хорошо, а так:
public class MyClass : CriticalFinalizerObject
{
private MyCOMObject _Application;
public MyClass ()
{
_Application = (MyCOMObject)Marshal.GetObjectForIUnknown(Marshal.GetIUnknownForObject(new MyCOMObject()));
}
~MyClass ()
{
//тут в COM объект должно посылатсья сообщение, но вываливается исключение
//"COM object that has been separated from its underlying RCW cannot be used."
_Application.Do("End");
Marshal.ReleaseComObject(_Application );
}
Или я чего-то не понимаю?...(