What is HWND in VC++

c#, visual-c++, winapi

Solution

HWND is a "handle to a window" and is part of the Win32 API . HWNDs are essentially pointers (IntPtr) with values that make them (sort of) point to a window-structure data. In general HWNDs are part an example for applying the ADT model.

If you want a Control's HWND see Control.Handle property. It is an IntPtr which value is an HWND.

Since HWND are not a .Net entity, they need to be released manually. This is done with Control.DestroyHandle().

Pay close attention to creation and destruction of HWND. Responsibility for object destruction is unusual in .Net and is in general a source for bugs and memory leaks.

Problem

What is the equivalent of HWND(VC++) in C#? I want to send HWND from my C# program to the VC++ dll.

Original source