我正在创建一个新的com对象来打开一个弹出消息。
$a = new-object -comobject wscript.shell
$b = $a.popup(“WARNING“,0,”Box title”,0 + 0x30)我注意到这个东西一直开着。我需要释放它吗?下面的命令将完成这一任务?
$null = [System.Runtime.Interopservices.Marshal]::ReleaseComObject($a)
[System.GC]::Collect()
[System.GC]::WaitForPendingFinalizers()发布于 2022-06-04 20:03:12
是的,这是很好的做法。通过释放com对象,将其标记为垃圾收集器将销毁的清理。
实际上,对象的引用计数器会减少,如果达到零,则在垃圾收集器运行时从内存中移除该对象。当发生时,您无法控制,但是这样可以确保对象被删除。请参阅这里
https://stackoverflow.com/questions/72502308
复制相似问题