0

在 WPF 中,我使用以下代码获取 IntPtr 句柄:

IntPtr mainWindowHandle = new WindowInteropHelper(Application.Current.MainWindow).Handle

当我使用完这个句柄时,我是否需要以任何方式释放它(例如使用 Marshal.FreeHGlobal() 方法)?

编辑:我在考虑 Marshal.FreeHGlobal(),而不是 Marshal.Release(),对不起!

4

1 回答 1

4

这与 COM 没有任何关系,Marshal.Release() 不适用。您只需获得本机窗口句柄的副本,它不必被释放。当窗口被销毁时,您需要停止使用句柄。由 Window.Close 事件发出信号。

于 2013-03-09T17:49:27.500 回答