スクリーンセーバー機能の有効無効を判定          <TOP>


SystemParametersInfo システム全体に関するパラメータを取得・設定
SPI_GETSCREENSAVEACTIVE(16) スクリーンセーバー機能が有効かどうか調べる
SPI_SETSCREENSAVEACTIVE(17) スクリーンセーバーを有効・無効に
 

 

 

'================================================================
'= スクリーンセーバー機能の有効無効を判定
'=    (SPI_GETSCREENSAVEACTIVE.bas)
'================================================================
#include "Windows.bi"

#define SPI_GETSCREENSAVEACTIVE 16      'スクリーンセーバー機能が有効かどうか調べる
#define SPI_SETSCREENSAVEACTIVE 17      'スクリーンセーバーを有効・無効に

' システム全体に関するパラメータを取得・設定
Declare Function Api_SystemParametersInfo& Lib "user32" Alias "SystemParametersInfoA" (ByVal uiAction&, ByVal uiParam&, pvParam As Any, ByVal fWinIni&)

Var Shared Text1 As Object
Var Shared Button1 As Object

Button1.Attach GetDlgItem("Button1") : Button1.SetFontSize 14
Text1.Attach GetDlgItem("Text1") : Text1.SetFontSize 14

'================================================================
'=
'================================================================
Declare Sub Button1_on edecl ()
Sub Button1_on()
    Var ScrnSaverActive  As Long
    Var Ret As Long

    'スクリーンセーバー機能の有効無効を取得
    Ret = Api_SystemParametersInfo(SPI_GETSCREENSAVEACTIVE, 0, ScrnSaverActive, 0)

    'スクリーンセーバー機能の有効無効を表示
    If ScrnSaverActive Then
        Text1.SetWindowText "スクリーンセーバーは 有効"
    Else
        Text1.SetWindowText "スクリーンセーバーは 無効"
    End If
End Sub

'================================================================
'=
'================================================================
While 1
    WaitEvent
Wend
Stop
End