Ik gebruik een ActiveX/COM component, maar het unloaden ervan werkt niet.
(Het betreft een ActiveX/COM component, geen control. Het ding is dus niet afgeleid van AxHost om in een Form getoond te worden of iets dergelijks)
De component is een .exe. Wanneer ik de form terug zichtbaar maak, en het dan manueel sluit geeft ie me de waarschuwing dat ie als ActiveX server draait en dat alle programma's die de component gebruiken gesloten dienen te worden.
Er is geen Quit() methode of iets dergelijks aanwezig. Ook registeren voor de GC heeft (natuurlijk) geen zin.
samenvatting van interessante code
breakpoint plaatsen op de Application property toont me dat het ding niet opgevraagd wordt.
andere references lijken me dus uitgesloten.
(Het betreft een ActiveX/COM component, geen control. Het ding is dus niet afgeleid van AxHost om in een Form getoond te worden of iets dergelijks)
De component is een .exe. Wanneer ik de form terug zichtbaar maak, en het dan manueel sluit geeft ie me de waarschuwing dat ie als ActiveX server draait en dat alle programma's die de component gebruiken gesloten dienen te worden.
Er is geen Quit() methode of iets dergelijks aanwezig. Ook registeren voor de GC heeft (natuurlijk) geen zin.
samenvatting van interessante code
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| public class ServiceLayer : IDisposable { AxApp app; public MyClass() { // initialisatie gaat via een GlobalsClass GlobalsClass g = new GlobalsClass(); app = g.Application(); app.Visible = false; } public AxApp Application { get { return app; } } Dispose() { app.CheckForSavedObjects = false; app.KeepAlive = false; app = null; } } |
breakpoint plaatsen op de Application property toont me dat het ding niet opgevraagd wordt.
andere references lijken me dus uitgesloten.
ASSUME makes an ASS out of U and ME