/// @brief AeroをOffにしていたらOnに戻す
        public void DWMAPIRestore()
        {
            if (!CanUseDWMAPIDLL())
            {
                // dwmapi.dllを利用できなければ何もしない
                return;
            }

            if (was_dwm_enabled_on_start_)
            {
                ExternalDWMAPI.DwmEnableComposition(ExternalDWMAPI.DWM_EC_ENABLECOMPOSITION);
            }
        }
        /// @brief 強制的にAeroのOn/Offを切り替える
        public void DWMAPIFlip(bool current)
        {
            if (!CanUseDWMAPIDLL())
            {
                // dwmapi.dllを利用できなければ何もしない
                return;
            }

            if (current)
            {
                ExternalDWMAPI.DwmEnableComposition(ExternalDWMAPI.DWM_EC_DISABLECOMPOSITION);
            }
            else
            {
                ExternalDWMAPI.DwmEnableComposition(ExternalDWMAPI.DWM_EC_ENABLECOMPOSITION);
            }
        }
        /// @brief Dwmapi.dllを利用してAeroをOffに
        public void DWMAPIOff()
        {
            if (!CanUseDWMAPIDLL())
            {
                // dwmapi.dllを利用できなければ何もしない
                was_dwm_enabled_on_start_ = false;
                return;
            }

            bool was_dwm_enabled_on_start;

            ExternalDWMAPI.DwmIsCompositionEnabled(out was_dwm_enabled_on_start);
            if (was_dwm_enabled_on_start)
            {
                ExternalDWMAPI.DwmEnableComposition(ExternalDWMAPI.DWM_EC_DISABLECOMPOSITION);
            }
            was_dwm_enabled_on_start_ = was_dwm_enabled_on_start;
        }