Например, в старом исходном коде .NET Framework 2.0 (Windows Forms, Visual Studio 2005 - Whidbey) функция GetClientRect была определена с помощью HandleRef:
[DllImport(ExternDll.User32, ExactSpelling=true, CharSet=CharSet.Auto)]
public static extern bool GetClientRect(HandleRef hWnd, [In, Out] ref NativeMethods.RECT rect);
В новом пакете кода Windows API (от Microsoft, 2009/2010) эта же функция определяется с помощью IntPtr:
[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
internal static extern bool GetClientRect(IntPtr hwnd, ref CoreNativeMethods.RECT rect);
На самом деле HandleRef не используется ни в одном из исходных файлов кода кода Windows API, в то время как он широко использовался в подписях собственных методов в старых исходных файлах .NET Framework.