Пытаюсь из C# вызвать SystemParametersInfo и изменить направление сглаживания шрифтов SPI_SETFONTSMOOTHINGORIENTATION
Объявил функцию так
[DllImport("user32.dll", SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool SystemParametersInfo(SPI uiAction, uint uiParam, ref uint pvParam, SPIF fWinIni);
Использую так, где value это одно из перечисления с направлениями
if (SystemParametersInfo(SPI.SPI_SETFONTSMOOTHINGORIENTATION, 0, ref value,
SPIF.SPIF_UPDATEINIFILE | SPIF.SPIF_SENDCHANGE) == false)
{
int code = Marshal.GetLastWin32Error();
return false;
}
Структуры объявлены так.
[Description("SPI_(System-wide parameter - Used in SystemParametersInfo function )"), Flags]
public enum SPI : uint
{
/// <summary>
/// Determines whether the warning beeper is on.
/// The pvParam parameter must point to a BOOL variable that receives TRUE if the beeper is on, or FALSE if it is off.
/// </summary>
SPI_GETBEEP = 0x0001,
[Description("SPIF_(System-wide parameter - Used in SystemParametersInfo function )"), Flags]
public enum SPIF : uint
{
None = 0x00,
SPIF_UPDATEINIFILE = 0x01,
SPIF_SENDCHANGE = 0x02,