<?xml version="1.0"?>
<doc>
    <assembly>
        <name>YourPhone.Calling.Managed</name>
    </assembly>
    <members>
        <member name="M:YourPhone.Calling.Managed.DataTypes.HfpCallLineFactory.MakeCallLineAsync(System.Guid,YourPhone.Calling.Managed.Managers.LineWatcherEventKind,YourPhone.AppCore.WinRT.Devices.IDeviceData)">
            <summary>
            Get a call line from a line ID.
            <p/>
            The OS often rapidly adds, removes (and updates) PhoneLines. This is known to happen when switching between devices or when setting up a new device for HFP.
            Trying to call PhoneLine.FromIdAsync on a line ID that is invalid, or one that has now been removed by the OS,
            or when Bluetooth is off results in E_NOT_FOUND being thrown.
            (https://task.ms/56321970) trackes these spurious calls from the OS. Regardless, this is no longer an unknown exception.
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Managers.HfpDeviceManager.IsUnpairedAsync">
            <summary>
            The only way of detecting that a device was unpaired while PL was not running is through DeviceInformation APIs
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Managers.HfpDeviceManager.DisposeHfpDeviceWatcherLocked">
            <summary>
            Disposes the current pairedDeviceWatcher if it exists.
            Should only be called under disposeLock.
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Settings.CallingDebugSettingsGroupView.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Settings.CallingDebugSettingsGroupView.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Settings.CallingDebugSettingsGroupView.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Settings.CallingSettingsGroupView.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Settings.CallingSettingsGroupView.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Settings.CallingSettingsGroupView.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.Accumulator.ViewModelProperty">
            <summary>
            The Dependency property backing the ViewModel property
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.Accumulator.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.Accumulator.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.Accumulator.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.BluetoothCallingManualPairingControl.ViewModelProperty">
            <summary>
            The Dependency property backing the ViewModel property
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.BluetoothCallingManualPairingControl.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.BluetoothCallingManualPairingControl.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.BluetoothCallingManualPairingControl.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.CallingNode.ViewModelProperty">
            <summary>
            The Dependency property backing the ViewModel property
            </summary>
        </member>
        <member name="P:YourPhone.Calling.Managed.UserControls.CallingNode.ViewModel">
            <summary>
            Gets or sets the viewmodel the chrome binds to.
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.CallingNode.PadTitleBarProperty">
            <summary>
            The Dependency property backing the PadTitleBar property
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.CallingNode.VerticalContentShiftProperty">
            <summary>
            The Dependency property backing the VerticalContentShift property
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.CallingNode.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.CallingNode.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.CallingNode.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.ContactSearchBox.SelectedContactProperty">
            <summary>
            The Dependency property backing the SelectedContact property
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.ContactSearchBox.SuggestionsProviderProperty">
            <summary>
            The Dependency property backing the SuggestionsProvider property
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.ContactSearchBox.PlaceholderTextProperty">
            <summary>
            The Dependency property backing the PlaceholderText property
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.ContactSearchBox.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.ContactSearchBox.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.ContactSearchBox.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.Keypad.DialedNumberProperty">
            <summary>
            The Dependency property backing the DialedNumber property
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.Keypad.CanCallProperty">
            <summary>
            The Dependency property backing the CanCall property
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.Keypad.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.Keypad.UnloadObject(Microsoft.UI.Xaml.DependencyObject)">
            <summary>
            UnloadObject(DependencyObject)
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.Keypad.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.Keypad.DisconnectUnloadedObject(System.Int32)">
            <summary>
            DisconnectUnloadedObject(int connectionId)
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.Keypad.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.KeypadButton.PrimaryContentStyleProperty">
            <summary>
            The Dependency property backing the PrimaryContentStyle property
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.KeypadButton.PrimaryContentProperty">
            <summary>
            The Dependency property backing the PrimaryContent property
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.KeypadButton.SecondaryContentProperty">
            <summary>
            The Dependency property backing the SecondaryContent property
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.KeypadButton.SecondaryContentStyleProperty">
            <summary>
            The Dependency property backing the SecondaryContentStyle property
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.KeypadButton.ButtonTypeProperty">
            <summary>
            The Dependency property backing the ButtonType property
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.KeypadButton.SecondaryContentVisibilityProperty">
            <summary>
            The Dependency property backing the SecondaryContentVisibility property
            </summary>
        </member>
        <member name="F:YourPhone.Calling.Managed.UserControls.KeypadButton.ShouldNarrateContentProperty">
            <summary>
            The Dependency property backing the ShouldNarrateContent property
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.KeypadButton.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.KeypadButton.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.UserControls.KeypadButton.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Utilities.CallingFeatureUtils.IsInBandRingingSupported">
            <summary>
            There was a Windows bug in certain builds that prevents in-band ringing from working.
            Specifically Windows will not play the phone ringtone even when PhoneLineTransportDevice.InBandRingingEnabled returns true.
            In these cases, we need to force a custom ringtone so that users don't miss incoming calls. https://microsoft.visualstudio.com/OS/_workitems/edit/45126205
            </summary>
        </member>
        <member name="T:YourPhone.Calling.Managed.ViewModels.CallHistorySection">
            <summary>
            Classifies a call's start time into a <see cref="T:YourPhone.Calling.Managed.ViewModels.CallHistorySection.CallHistorySectionBucket"/> and resolves
            the localized header text and timestamp format for each section.
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.ViewModels.CallHistorySection.GetSection(System.DateTimeOffset,System.DateTimeOffset)">
            <summary>
            Classifies <paramref name="startTime"/> relative to <paramref name="now"/> by local calendar date.
            The start time is converted to local time, and only the date component is considered; the time of day
            and elapsed hours are ignored. As a result,
            a call late in the previous evening is classified as Yesterday even if fewer than 24 hours have
            elapsed, and a call earlier today is Today even if it is nearly 24 hours old. The "this week" and
            "last month" windows span a fixed number of whole calendar days back from today.
            </summary>
        </member>
        <member name="T:YourPhone.Calling.Managed.ViewModels.CallWindowViewModel">
            <summary>
            Per-window view-model for a mini calling window. Owns the window's current content
            (a dial-confirmation prompt or an active call) so the windowing layer can drive the
            window through this view-model instead of reaching into the view.
            </summary>
        </member>
        <member name="P:YourPhone.Calling.Managed.ViewModels.CallWindowViewModel.ConfirmExitAsync">
            <summary>
            Assigned by the view to service per-window exit-confirmation prompts, letting the
            windowing layer request confirmation without holding a reference to the view.
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.ViewModels.CallWindowViewModel.SwapToActiveCall(YourPhone.Calling.Managed.ViewModels.PhoneCallViewModel)">
            <summary>
            Promotes a dial-confirmation window to an active call. Sets the active call before
            clearing the dial-confirmation VM so the view transitions straight to the active state.
            </summary>
        </member>
        <member name="P:YourPhone.Calling.Managed.ViewModels.DialConfirmationViewModel.AccessibleName">
            <summary>
            Screen-reader description of the call target for the confirm-before-dial speedbump: the
            contact name, the number when shown separately, and the "Call using…" subtitle. The Call
            button references this via AutomationProperties.DescribedBy, so Narrator reads who is being
            called when the button takes focus. Reuses the values already shown on the card.
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.ViewModels.PhoneCallViewModel.EndHfpSafeAsync(System.String)">
            <summary>
            Ends the call. When another call exists, HFP can't end a held call directly (the OS
            rejects it), so this resumes the held call first, waits for phone confirmation, then ends.
            A lone held call ends fine, so the resume is a no-op cost in that case.
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.ViewModels.PhoneCallViewModel.StartDurationTimerIfNotStarted">
            <summary>
            Because PhoneCallInfo.StartTime is more a guardrail than a reflection of what the phone shows,
            trying to attain sub-second accuracy with respect to that timestamp is meaningless.
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.ActiveCallBanner.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.ActiveCallBanner.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.ActiveCallBanner.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.BluetoothRepairDialog.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.BluetoothRepairDialog.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.BluetoothRepairDialog.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="P:YourPhone.Calling.Managed.Views.CallingView.CanEndCall">
            <summary>
            Whether ending this call is allowed right now. A held call can only be ended by resuming
            first (HFP can't end a held call directly), which can't happen while another call is
            dialing. The exit-confirmation dialog binds its End button to this, so the user can't
            confirm the close in that state. Re-evaluates live as IsHeld/IsDialing change, so it
            re-enables once the dial resolves.
            </summary>
        </member>
        <member name="P:YourPhone.Calling.Managed.Views.CallingView.ShowHeldCallInterruptionWarning">
            <summary>
            Whether the end-call confirmation should warn that ending this call will briefly
            interrupt another active call. The genuinely held call is always the secondary; when its
            window is closed it is resumed-then-ended, which briefly interrupts the active primary.
            Restricting to the secondary slot also avoids a false positive during that teardown, where
            the primary is momentarily auto-held while the ending secondary is still talking.
            Re-evaluates live as the slots / IsHeld / IsAnyCallTalking change.
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.CallingView.TryFocusDialConfirmationAction">
            <summary>
            Moves initial focus to the confirm-before-dial primary action for the current state — the
            Call button when ready, or the Open Phone Link button on failure — instead of leaving focus
            on the title-bar minimize button. On window open Narrator reads the focused element, and
            each action is described by its adjacent card, so the user hears the call target or the
            failure reason. No-op in the connecting state, which has no actionable element. Deferred so
            focus runs after layout and visibility have settled.
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.CallingView.ShowPerWindowExitConfirmationAsync">
            <summary>
            Per-window exit confirmation for mini UX. Shows the flyout and returns
            true if the user confirmed, false if cancelled. This avoids the shared
            ExitConfirmationRequested event which fires on all windows simultaneously.
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.CallingView.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.CallingView.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.CallingView.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.CallsInformationalBanner.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.CallsInformationalBanner.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.CallsInformationalBanner.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.ConfirmPairingDialog.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.ConfirmPairingDialog.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.ConfirmPairingDialog.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.ExpandedPhoneCallView.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.ExpandedPhoneCallView.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.ExpandedPhoneCallView.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.MinimizedPhoneCallView.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.MinimizedPhoneCallView.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.MinimizedPhoneCallView.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.SecondaryPhoneCallView.InitializeComponent">
            <summary>
            InitializeComponent()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.SecondaryPhoneCallView.Connect(System.Int32,System.Object)">
            <summary>
            Connect()
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.Views.SecondaryPhoneCallView.GetBindingConnector(System.Int32,System.Object)">
            <summary>
            GetBindingConnector(int connectionId, object target)
            </summary>
        </member>
        <member name="T:YourPhone.Calling.Managed.YourPhone_Calling_Managed_XamlTypeInfo.XamlMetaDataProvider">
            <summary>
            Main class for providing metadata for the app or library
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.YourPhone_Calling_Managed_XamlTypeInfo.XamlMetaDataProvider.GetXamlType(System.Type)">
            <summary>
            GetXamlType(Type)
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.YourPhone_Calling_Managed_XamlTypeInfo.XamlMetaDataProvider.GetXamlType(System.String)">
            <summary>
            GetXamlType(String)
            </summary>
        </member>
        <member name="M:YourPhone.Calling.Managed.YourPhone_Calling_Managed_XamlTypeInfo.XamlMetaDataProvider.GetXmlnsDefinitions">
            <summary>
            GetXmlnsDefinitions()
            </summary>
        </member>
        <member name="T:Windows.Win32.PInvoke">
            <content>
            Contains extern methods from "KERNEL32.dll".
            </content>
            <content>
            Contains extern methods from "USER32.dll".
            </content>
        </member>
        <member name="F:Windows.Win32.PInvoke.WM_SYSCOMMAND">
            <summary>A window receives this message when the user chooses a command from the Window menu (formerly known as the system or control menu) or when the user chooses the maximize button, minimize button, restore button, or close button.</summary>
            <returns>An application should return zero if it processes this message.</returns>
            <remarks>
            <para>To obtain the position coordinates in screen coordinates, use the following code:</para>
            <para></para>
            <para>This doc was truncated.</para>
            <para><see href="https://learn.microsoft.com/windows/win32/menurc/wm-syscommand#">Read more on docs.microsoft.com</see>.</para>
            </remarks>
        </member>
        <member name="M:Windows.Win32.PInvoke.CloseHandle(Windows.Win32.Foundation.HANDLE)">
            <summary>Closes an open object handle.</summary>
            <param name="hObject">A valid handle to an open object.</param>
            <returns>
            <para>If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call <a href="https://docs.microsoft.com/windows/desktop/api/errhandlingapi/nf-errhandlingapi-getlasterror">GetLastError</a>. If the application is running under a debugger,  the function will throw an exception if it receives either a  handle value that is not valid  or a pseudo-handle value. This can happen if you close a handle twice, or if you  call <b>CloseHandle</b> on a handle returned by the <a href="https://docs.microsoft.com/windows/desktop/api/fileapi/nf-fileapi-findfirstfilea">FindFirstFile</a> function instead of calling the <a href="https://docs.microsoft.com/windows/desktop/api/fileapi/nf-fileapi-findclose">FindClose</a> function.</para>
            </returns>
            <remarks>
            <para>The <b>CloseHandle</b> function closes handles to the following objects: </para>
            <para>This doc was truncated.</para>
            <para><see href="https://learn.microsoft.com/windows/win32/api/handleapi/nf-handleapi-closehandle#">Read more on docs.microsoft.com</see>.</para>
            </remarks>
        </member>
        <member name="M:Windows.Win32.PInvoke.PostMessage(Windows.Win32.Foundation.HWND,System.UInt32,Windows.Win32.Foundation.WPARAM,Windows.Win32.Foundation.LPARAM)">
            <summary>Places (posts) a message in the message queue associated with the thread that created the specified window and returns without waiting for the thread to process the message. (Unicode)</summary>
            <param name="hWnd">
            <para>Type: <b>HWND</b> A handle to the window whose window procedure is to receive the message. The following values have special meanings. </para>
            <para>This doc was truncated.</para>
            <para><see href="https://learn.microsoft.com/windows/win32/api/winuser/nf-winuser-postmessagew#parameters">Read more on docs.microsoft.com</see>.</para>
            </param>
            <param name="Msg">
            <para>Type: <b>UINT</b> The message to be posted. For lists of the system-provided messages, see <a href="https://docs.microsoft.com/windows/desktop/winmsg/about-messages-and-message-queues">System-Defined Messages</a>.</para>
            <para><see href="https://learn.microsoft.com/windows/win32/api/winuser/nf-winuser-postmessagew#parameters">Read more on docs.microsoft.com</see>.</para>
            </param>
            <param name="wParam">
            <para>Type: <b>WPARAM</b> Additional message-specific information.</para>
            <para><see href="https://learn.microsoft.com/windows/win32/api/winuser/nf-winuser-postmessagew#parameters">Read more on docs.microsoft.com</see>.</para>
            </param>
            <param name="lParam">
            <para>Type: <b>LPARAM</b> Additional message-specific information.</para>
            <para><see href="https://learn.microsoft.com/windows/win32/api/winuser/nf-winuser-postmessagew#parameters">Read more on docs.microsoft.com</see>.</para>
            </param>
            <returns>
            <para>Type: <b>BOOL</b> If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call <a href="https://docs.microsoft.com/windows/desktop/api/errhandlingapi/nf-errhandlingapi-getlasterror">GetLastError</a>.</para>
            </returns>
            <remarks>
            <para>When a message is blocked by UIPI the last error, retrieved with <a href="https://docs.microsoft.com/windows/desktop/api/errhandlingapi/nf-errhandlingapi-getlasterror">GetLastError</a>, is set to 5 (access denied). Messages in a message queue are retrieved by calls to the <a href="https://docs.microsoft.com/windows/desktop/api/winuser/nf-winuser-getmessage">GetMessage</a> or <a href="https://docs.microsoft.com/windows/desktop/api/winuser/nf-winuser-peekmessagea">PeekMessage</a> function. Applications that need to communicate using <b>HWND_BROADCAST</b> should use the <a href="https://docs.microsoft.com/windows/desktop/api/winuser/nf-winuser-registerwindowmessagea">RegisterWindowMessage</a> function to obtain a unique message for inter-application communication. The system only does marshalling for system messages (those in the range 0 to (<a href="https://docs.microsoft.com/windows/desktop/winmsg/wm-user">WM_USER</a>-1)). To send other messages (those &gt;= <b>WM_USER</b>) to another process, you must do custom marshalling. If you send a message in the range below <a href="https://docs.microsoft.com/windows/desktop/winmsg/wm-user">WM_USER</a> to the asynchronous message functions (<b>PostMessage</b>, <a href="https://docs.microsoft.com/windows/desktop/api/winuser/nf-winuser-sendnotifymessagea">SendNotifyMessage</a>, and <a href="https://docs.microsoft.com/windows/desktop/api/winuser/nf-winuser-sendmessagecallbacka">SendMessageCallback</a>), its message parameters cannot include pointers. Otherwise, the operation will fail. The functions will return before the receiving thread has had a chance to process the message and the sender will free the memory before it is used. Do not post the <a href="https://docs.microsoft.com/windows/desktop/winmsg/wm-quit">WM_QUIT</a> message using <b>PostMessage</b>; use the <a href="https://docs.microsoft.com/windows/desktop/api/winuser/nf-winuser-postquitmessage">PostQuitMessage</a> function. An accessibility application can use <b>PostMessage</b> to post <a href="https://docs.microsoft.com/windows/desktop/inputdev/wm-appcommand">WM_APPCOMMAND</a> messages  to the shell to launch applications. This  functionality is not guaranteed to work for other types of applications. There is a limit of 10,000 posted messages per message queue. This limit should be sufficiently large.  If your application exceeds the limit, it should be redesigned to avoid consuming so many system resources. To adjust this limit, modify the following registry key. <pre><b>HKEY_LOCAL_MACHINE</b> <b>SOFTWARE</b> <b>Microsoft</b> <b>Windows NT</b> <b>CurrentVersion</b> <b>Windows</b> <b>USERPostMessageLimit</b></pre> If the function fails, call <a href="https://docs.microsoft.com/windows/desktop/api/errhandlingapi/nf-errhandlingapi-getlasterror">GetLastError</a> to get extended error information. <b>GetLastError</b> returns <b>ERROR_NOT_ENOUGH_QUOTA</b> when the limit is hit. The minimum acceptable value is 4000.</para>
            <para><see href="https://learn.microsoft.com/windows/win32/api/winuser/nf-winuser-postmessagew#">Read more on docs.microsoft.com</see>.</para>
            </remarks>
        </member>
    </members>
</doc>
