Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Заставка Добавлено: 16.10.07 10:59  

Автор вопроса:  Kol
Подскажите, как из приложения VB.net или С#
запретить вызов заставки?

Ответить

  Ответы Всего ответов: 5  

Номер ответа: 1
Автор ответа:
 Yanex



ICQ: 387761649 

Вопросов: 32
Ответов: 169
 Web-сайт: Progr.Do.am
 Профиль | | #1
Добавлено: 16.10.07 11:19
Попробуй посмотреть справочник API:

http://www.yanexsoft.narod.ru/helpf/API.chm
http://www.yanexsoft.narod.ru/helpf/API.zip

Там вроде бы была соответствующая API-функция. Но она не работает на Windows Vista, проверено.

Ответить

Номер ответа: 2
Автор ответа:
 BUMM ®



Вопросов: 8
Ответов: 482
 Профиль | | #2 Добавлено: 16.10.07 22:49


Шапка
// DisableScreenSave.h
// interface for the CDisableScreenSave class.
//////////////////////////////////////////////

#if !defined(AFX_DISABLESCREENSAVE_H__94B5D6F5
        _BB06_4409_9876_1D1EB6F1480B__INCLUDED_)
#define AFX_DISABLESCREENSAVE_H__94B5D6F5
        _BB06_4409_9876_1D1EB6F1480B__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000


class CDisableScreenSave  
{
public:
    CDisableScreenSave();
    virtual ~CDisableScreenSave();

protected:
    int *m_pValue;
};

#endif  
        // !defined(AFX_DISABLESCREENSAVE_H__94B5D6F5
        //      _BB06_4409_9876_1D1EB6F1480B__INCLUDED_)


Модуль

// DisableScreenSave.cpp
// implementation of the CDisableScreenSave class.
//////////////////////////////////////////////////

#include "stdafx.h"
#include ";DisableScreenSave.h"
#include <../src/afximpl.h>

///////////////////////////////////////////////////
// Construction/Destruction
///////////////////////////////////////////////////

static UINT dss_GetList[] = {SPI_GETLOWPOWERTIMEOUT,
    SPI_GETPOWEROFFTIMEOUT, SPI_GETSCREENSAVETIMEOUT};
static UINT dss_SetList[] = {SPI_SETLOWPOWERTIMEOUT,
    SPI_SETPOWEROFFTIMEOUT, SPI_SETSCREENSAVETIMEOUT};


static const int dss_ListCount = _countof(dss_GetList);


CDisableScreenSave::CDisableScreenSave()
{
    m_pValue = new int[dss_ListCount];

    for (int x=0;x<dss_ListCount;x++)
    {
        // Get the current value
        VERIFY(SystemParametersInfo (dss_GetList[x], 0,
            &m_pValue[x], 0));

        TRACE(_T("%d = %d\n";), dss_GetList[x], m_pValue[x];);

        // Turn off the parameter
        VERIFY(SystemParametersInfo (dss_SetList[x], 0,
            NULL, 0));
    }
}


CDisableScreenSave::~CDisableScreenSave()
{
    for (int x=0;x<dss_ListCount;x++)
    {
        // Set the old value
        VERIFY(SystemParametersInfo (dss_SetList[x],
            m_pValue[x], NULL, 0));
    }

    delete[] m_pValue;
}

Ответить

Номер ответа: 3
Автор ответа:
 BUMM ®



Вопросов: 8
Ответов: 482
 Профиль | | #3 Добавлено: 16.10.07 23:00
для васика:

Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Integer, ByVal uParam As Integer, ByVal lpvParam As Integer, ByVal fuWinIni As Integer) As Integer
   Public Function ToggleScreenSaverActive(ByRef Active As Boolean) As Boolean
       Dim lActiveFlag As Integer
       Dim retvaL As Integer

       lActiveFlag = IIf(Active, 1, 0)
       retvaL = SystemParametersInfo(17, lActiveFlag, 0, 0)
       ToggleScreenSaverActive = retvaL > 0
   End Function


   ' On
       ToggleScreenSaverActive(True)


   ' Off
       ToggleScreenSaverActive(False)

Ответить

Номер ответа: 4
Автор ответа:
 Kol



Вопросов: 1
Ответов: 4
 Профиль | | #4 Добавлено: 18.10.07 11:09
Большое спасибо!

Ответить

Номер ответа: 5
Автор ответа:
 Kol



Вопросов: 1
Ответов: 4
 Профиль | | #5 Добавлено: 18.10.07 19:51
Еще раз спасибо! Я очень люблю юмор и шутки. Мне очень понравилось, особенно вариант на C!!! – просто шедевр.
Сразу видно – работал профессионал!
На VB слишком коротко – не интересно.
Лично я оставил две строчки:

SystemParametersInfo(17, 0, 0, 0) ’Выключить заставку

SystemParametersInfo(17, 1, 0, 0) ’Включить заставку

На самом деле, Вы мне очень помогли!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам