0

だから私はスクリーンセーバーのタイムアウトを無効にするはずのコードを少し持っています

    [DllImport("user32.dll", CharSet = CharSet.Auto)]
    private static extern bool SystemParametersInfo(
        int uAction, int uParam, ref int lpvParam,
        int flags);

    [DllImport("user32.dll", CharSet = CharSet.Auto)]
    private static extern bool SystemParametersInfo(
        int uAction, int uParam, ref bool lpvParam,
        int flags);

SystemParametersInfo(15, Value, ref nullVar, 2);

現在のスクリーンセーバーのタイムアウト値をGETする関数もあり、

SystemParametersInfo(14, 0, ref value, 0);

タイムアウトのためにこの値を 0 に設定しようとすると、現在の値を取得すると 600 の値が返されます。

設定している値が実際に設定されているようには見えません。

誰がこれを引き起こす可能性があるか知っていますか? ちなみに、私は Windows 7 x64 マシンを使用しており、このポリシーを設定しているドメインにいます (私は信じています)。

皆さんありがとう!

4

1 に答える 1

0

0 ではなく -1 に設定してみてください。うまくいくかもしれません...

于 2012-11-13T01:34:21.150 に答える