mirror of
https://github.com/Hofknecht/SystemTrayMenu.git
synced 2024-10-02 01:57:23 +13:00
41 lines
1.1 KiB
C#
41 lines
1.1 KiB
C#
|
using System;
|
|||
|
|
|||
|
namespace SystemTrayMenu.Helper
|
|||
|
{
|
|||
|
internal static class ShellHelper
|
|||
|
{
|
|||
|
#region Low/High Word
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// Retrieves the High Word of a WParam of a WindowMessage
|
|||
|
/// </summary>
|
|||
|
/// <param name="ptr">The pointer to the WParam</param>
|
|||
|
/// <returns>The unsigned integer for the High Word</returns>
|
|||
|
public static uint HiWord(IntPtr ptr)
|
|||
|
{
|
|||
|
uint param32 = (uint)(ptr.ToInt64() | 0xffffffffL);
|
|||
|
if ((param32 & 0x80000000) == 0x80000000)
|
|||
|
{
|
|||
|
return (param32 >> 16);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
return (param32 >> 16) & 0xffff;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// Retrieves the Low Word of a WParam of a WindowMessage
|
|||
|
/// </summary>
|
|||
|
/// <param name="ptr">The pointer to the WParam</param>
|
|||
|
/// <returns>The unsigned integer for the Low Word</returns>
|
|||
|
public static uint LoWord(IntPtr ptr)
|
|||
|
{
|
|||
|
uint param32 = (uint)(ptr.ToInt64() | 0xffffffffL);
|
|||
|
return (param32 & 0xffff);
|
|||
|
}
|
|||
|
|
|||
|
#endregion
|
|||
|
}
|
|||
|
}
|