protected override void OnLoad(EventArgs e) { Type type = typeof(System.Object); string assembly = type.Assembly.CodeBase.Replace("mscorlib.dll", "System.Windows.Forms.dll").Replace("file:///", ""); string assemblyName = System.Reflection.AssemblyName.GetAssemblyName(assembly).FullName; Type unsafeNativeMethods = Type.GetType(System.Reflection.Assembly.CreateQualifiedName(assemblyName, "System.Windows.Forms.UnsafeNativeMethods")); System.Reflection.MethodInfo methodInfo = unsafeNativeMethods.GetNestedType("IOleObject").GetMethod("GetClientSite"); _propertyPageSite = methodInfo.Invoke(this, null) as Microsoft.Office.Interop.Outlook.PropertyPageSite; }