zwalnianie obiektu OLE

0

mamy cos takiego :

 XLS := CreateOleObject('Excel.Application');
XLS := UnAssigned

Ale trzeba dolaczac Variants, zeby miec to unassigned. Nie ma czegos z ComObj do zwolnienia tego obiektu, lecz trzeba sie posilkowac obcym Unitem ?

0

Możesz chyba też wywołać metodę obiektu (bodajże Quit). A co do zwalniania, to chyba możesz podstawić null.

Na czym polega problem żeby ten drugi unit dołączyć ? Skoro korzystasz z OleVariant to co w tym dziwnego żeby dołączać Variants.pas ? ComObj to narzędzia do automatyzacji. Jak nie chcesz mieć Variants to użyj wczesnego wiązania a nie późnego i już.

b

0

zadne metody quit. Nie kazdy kompoent musi wspierac taka metode interface'owa.
Po pierwsze jesli obiekt jest zadeklarowany lokalnie to nic nie musisz robic. Po wyjsciu z funkcji/procedury licznik referncji spada do zera.
Jesli globalnie to zawsze przez UNASSIGNED

1 użytkowników online, w tym zalogowanych: 0, gości: 1