Visual Basic: новости сайтов, советы, примеры кодов.
Выпуск 59.


VBNet VBMania
Голосование:

Ваш голос отсылается по E-mail владельцу сайта, после чего голоса анализируются и на отдельной странице выводятся результаты.

Нет тем.

Рассылки Subscribe.Ru
Мир программирования на Visual BASIC 5.0 и HTML.
Новости сайта IgorykSoft и советы по программированию


Рассылки Subscribe.Ru
Старые игры

Доска почёта:

Sergey Y. Tkachev
Кононенко Роман
Kirill

Ссылки:

  • Улицы VB
  • Использование VB
  • Азбука VB
  • VB на русском
  • Улицы VB
  • Кирпичики VB
  • CообЧа VB
  • Snoozex Design
  • IgorykSoft
  • Господа!!! читайте MSDN!!!

    Несколько слов от автора:

       Ураааа!!!!! Наконец-то каникулы!!!
    Читайте!


    Содержание выпуска




    Книги

    Переход на VB .NET. Стратегии, концепции, код (цена ~ 158 руб.)

    Эта книга была задумана как одна из первых книг о.NET, которая ознакомит читателя с основными идеями новой архитектуры и подготовит его к знакомству с более детальной литературой, например документацией Microsoft и ее толкованиями, которая неизбежно появится на рынке. Она поможет вам взглянуть на эту технологию с позиций ваших собственных рабочих планов и быстро освоить те концепции, которые покажутся необычными для большинства прогр...

    Автор(ы): Дан Эпплман, Издательство: Питер, 2002 г.


    Программирование на VB.NET. Учебный курс (цена ~ 119 руб.)

    Эта книга является вводным курсом по изучению языка программирования Visual Basic .NET. Даны основные принципы объектно-ориентированного программирования в контексте языка VB .NET, поскольку без хорошей подготовки в этой области невозможно в полной мере пользоваться всеми преимуществами VB .NET.
    Изложены азы всех аспектов языка, которыми должен владеть любой профессиональный разработчик VB .NET

    Автор(ы): Г. Корнелл, Дж. Моррисон, Издательство: Питер, 2002 г.


    VB.NET для разработчиков (цена ~ 125 руб.)

    Основная задача книги - быстро ознакомить разработчиков Visual Basic с изменениями в .NET Framework. Программисты, использующие Java, C++, Delphi или другие инструменты разработки приложений и интересующиеся Visual Basic или технологией .NET Framework, также найдут эту книгу полезной. Хотя книга посвящена Visual Basic.NET, ее основная цель - продемонстрировать взаимодействие Visual Basic и ...

    Автор(ы): Кит Франклин, Издательство: Вильямс, 2002 г.




    Остальные книги о VB можно найти
    здесь.

    наверх


    Скрыть/показать иконки рабочего стола

    Добавьте на форму 2 CommandButton. Первая кнопка спрячет ярлыки с рабочего стола, вторая - покажет.

    'ВАРИАНТ 1
    Private Declare Function ShowWindow& Lib "user32" (ByVal hWnd&, ByVal nCmdShow&)
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Const SW_HIDE = 0
    Const SW_NORMAL = 1

    Private Sub Command1_Click()
    Dim hHandle As Long
    hHandle = FindWindow("progman", vbNullString)
    Call ShowWindow(hHandle, SW_HIDE)
    End Sub

    Private Sub Command2_Click()
    Dim hHandle As Long
    hHandle = FindWindow("progman", vbNullString)
    Call ShowWindow(hHandle, SW_NORMAL)
    End Sub

    'ВАРИАНТ 2
    Private Declare Function ShowWindow Lib "user32" (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Private Declare Function EnableWindow Lib "user32" (ByVal hWnd As Long, ByVal fEnable As Long) As Long
    Const SW_HIDE = 0
    Const SW_SHOW = 5

    Public Sub Desktop(Visible As Boolean)
    Dim hWnd As Long
    hWnd = FindWindow("Progman", "Program Manager")
    If Visible Then
    ShowWindow hWnd, SW_SHOW
    Else
    ShowWindow hWnd, SW_HIDE
    End If
    EnableWindow hWnd, Visible
    End Sub

    Private Sub Command1_Click()
    Desktop False
    End Sub

    Private Sub Command2_Click()
    Desktop True
    End Sub

    наверх


    Как сменить рисунок рабочего стола

    Добавьте на форму 2 CommandButton. Первая кнопка помещает на рабочий стол любой ваш рисунок, вторая - убирает этот рисунок.

    Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As String, ByVal fuWinIni As Long) As Long
    Const SPI_SETDESKWALLPAPER = 20

    Private Sub Command1_Click()
    SystemParametersInfo SPI_SETDESKWALLPAPER, 0, "D:\Basic\tmpProj\Load.bmp", True
    'Заменить путь D:\Basic\tmpProj\Load.bmp на нужный вам файл рисунка в формате bmp
    End Sub

    Private Sub Command2_Click()
    SystemParametersInfo SPI_SETDESKWALLPAPER, 0, 0, False
    End Sub

    наверх


    Включен ли активный рабочий стол

    Как вы знаете, существует возможность загружать web-странички непосредственно на Рабочий Стол. Данный пример позволяет определить, включен или выключен режим рабочего стола Active Desktope

    Private Declare Function FindWindow& Lib "user32" Alias "FindWindowA" (ByVal lpClassName$, ByVal lpWindowName$)
    Private Declare Function FindWindowEx& Lib "user32" Alias "FindWindowExA" (ByVal hWndParent&, ByVal hWndChildAfter&, ByVal lpClassName$, ByVal lpWindowName$)

    Public Function IE4ActiveDesktop() As Boolean
    Dim Templong&
    Templong = FindWindow("Progman", vbNullString)
    Templong = FindWindowEx(Templong, 0&, "SHELLDLL_DefView", vbNullString)
    Templong = FindWindowEx(Templong, 0&, "Internet Explorer_Server", vbNullString)
    If Templong > 0 Then
    IE4ActiveDesktop = True
    Else
    IE4ActiveDesktop = False
    End If
    End Function

    Private Sub Command1_Click()
    MsgBox IE4ActiveDesktop
    End Sub

    наверх


    Разложить все иконки на рабочем столе по порядку (один за другим)

    Расположите на форме элемент CommandButton

    Private Const LVA_ALIGNLEFT = &H1
    Private Const LVM_ARRANGE = &H1016
    Private Const GW_CHILD = 5
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Private Declare Function GetWindow Lib "user32" (ByVal hWnd As Long, ByVal wCmd As Long) As Long
    Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Long) As Long
    Public Function ArrangeDesktopIcons() As Boolean
    Dim hWnd As Long
    Dim RetVal As Long
    'найти хэндл рабочего стола
    hWnd = FindWindow("Progman", vbNullString)
    hWnd = GetWindow(hWnd, GW_CHILD)
    hWnd = GetWindow(hWnd, GW_CHILD)
    'выстроить иконки
    RetVal = SendMessage(hWnd, LVM_ARRANGE, LVA_ALIGNLEFT, 0)
    ArrangeDesktopIcons = RetVal > 0
    End Function
    Private Sub Command1_Click()
    ArrangeDesktopIcons
    End Sub

    наверх


    Изменение внешнего вида кнопки ПУСК

    Для изменения внешнего вида кнопки ПУСК вам нужна любая картинка размером 55 пикс * 22 пикс. под именем temp.bmp

    Private Type RECT
    Left As Long
    Top As Long
    Right As Long
    Bottom As Long
    End Type

    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
    Private Declare Function GetWindowDC Lib "user32" (ByVal hwnd As Long) As Long
    Private Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hdc As Long) As Long
    Private Declare Function CreateCompatibleBitmap Lib "gdi32" (ByVal hdc As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long
    Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
    Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
    Private Declare Function DeleteDC Lib "gdi32" (ByVal hdc As Long) As Long
    Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
    Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long

    Const SRCCOPY = &HCC0020

    Dim hwndTB As Long ' handle taskbar'а
    Dim hWndSB As Long ' handle окна кнопки ПУСК
    Dim hDcSB As Long ' handle содержимого кнопки ПУСК
    Dim mRect As RECT ' координаты кнопки ПУСК
    Dim hDcTmp As Long ' handle новой картинки
    Dim hBmpTmp As Long ' временная картинка
    Dim hBmpTmp2 As Long ' временная картинка
    Dim nWidth As Long ' ширина кнопки ПУСК
    Dim nHeight As Long ' высота кнопки ПУСК
    Dim sPath As String ' путь к картинке

    Private Sub Form_Load()
    ' получить handle taskbar и кнопки ПУСК
    hwndTB = FindWindow("Shell_TrayWnd", "")
    hWndSB = FindWindowEx(hwndTB, 0, "button", vbNullString)
    ' получить dc кнопки ПУСК
    hDcSB = GetWindowDC(hWndSB)
    ' получить координаты кнопки ПУСК
    Call GetWindowRect(hWndSB, mRect)
    ' ширина и высота
    nWidth = mRect.Right - mRect.Left
    nHeight = mRect.Bottom - mRect.Top
    hDcTmp = CreateCompatibleDC(hDcSB)
    hBmpTmp = CreateCompatibleBitmap(hDcTmp, nWidth, nHeight)
    ' установить путь для загрузки картинки
    sPath = App.Path & "\temp.bmp"
    hBmpTmp2 = SelectObject(hDcTmp, LoadPicture(sPath))
    End Sub

    Private Sub tmrPaint_Timer()
    ' рисовать кнопку ПУСК
    Call BitBlt(hDcSB, 0, 0, nWidth, nHeight, hDcTmp, 0, 0, SRCCOPY)
    End Sub

    Private Sub Form_Unload(Cancel As Integer)
    ' очистить кнопку ПУСК
    hBmpTmp = SelectObject(hDcTmp, hBmpTmp2)
    DeleteObject hBmpTmp
    DeleteDC hDcTmp
    End Sub

    наверх


    Заблокировать кнопку ПУСК

    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
    Private Declare Function EnableWindow Lib "user32" (ByVal hwnd As Long, ByVal fEnable As Long) As Long

    Public Sub EnableStartButton(Optional Enabled As Boolean = True)
    'this will enable/disable any window with a little modifaction
    Dim lHwnd As Long
    'найти hWnd
    lHwnd& = FindWindowEx(FindWindow("Shell_TrayWnd", ""), 0&, "Button", vbNullString)
    'call the enablewindow api and do the what needs to be done
    Call EnableWindow(lHwnd&, CLng(Enabled))
    End Sub

    Private Sub Form_Load()
    EnableStartButton True 'Кнопка ПУСК не заблокирована
    'EnableStartButton False 'Кнопка ПУСК заблокирована
    End Sub

    наверх


    Мои программы

    BalloonMessage for MS Agent

       BalloonMessage for Microsoft Agent реализует диалог программы с пользователем, используя при этом технологию Microsoft Agent. OCX реализует три типа диалоговых окон: InputBox, MsgBox и MsgLabels.

    Автор: Шатрыкин Иван. Соавтор: Павел Сурменок.

    наверх


    Вопрос/Ответ

    Здесь Вы можете задать вопрос, или ответить на уже имеющиеся вопросы.

    Вопросы:


    Автор вопроса:
    Tolic

    Ответ ожидается по этому адресу

       Есть Винда 3.1.
    1) Как програмно узнать содержимое групп в диспетчере программ? (я имею ввиду как узнать какие ярлыки в группе).

    2) Можно как то програмно поменять строку заголовка любого открытого окна?


    Автор вопроса: Duke

    Ответ ожидается по этому адресу

       1.Я янаю что в 16 и 8 ричную систему надо воспольяоватся операторами HEX и OCT, а что если мне надо перевести обратно не 255 в FF, а FF в 255.

    2.Где вяять пример по преводу ия DOS в WIN кодировку(ПРИМЕР !!!), или детальное пояснение.


    Автор вопроса: Rusty Angles

    Ответ ожидается по этому адресу

       Как извлекать и записывать данные в адресса памяти? (Для VB6)


    Автор вопроса: А.М.

    Ответ ожидается по этому адресу

       Как на VB6 получить ия "региональных установок" формат даты и денежной единицы?


    Автор вопроса: Алексей

    Ответ ожидается по этому адресу

       Как можно программу сделать невидимой для Ctrl+Alt+Delete


    Автор вопроса: michael

    Ответ ожидается по этому адресу

       Как лучше выполнять процедуру каждые 2 сек.? Я пользуюсь таймером, но переодически получаю "Msgsrv32 not responding". Может это не связано...


    Автор вопроса: Игорь

    Ответ ожидается по этому адресу

       Как в VB6 зделать ссылку на файл (любой), чтобы его открыть (запустить)?
      
    p.s. Хочу зделать Авторан для CD!


    Автор вопроса: shadow

    Ответ ожидается по этому адресу

       я пытаюсь делать чат вроде Quick Chat, подскажите можно ли обойтись бея сокета, сделать вс? на апи? Может у кого есть исходники посмитреть? Это беясерверный чат.


    Автор вопроса: P@Ssword

    Ответ ожидается по этому адресу

       Сидит моя прога в трее. Когда кликают правой кнопкой мыши, открывается менюшка,кликнув в которой, юяверь открывает формочку (frm.Show). А когда юяверь делает двойной клик по иконке в трее, я опять делаю frm.Show, форма появляется, но она, по-моему, не активна, т.к. на первый клик форма не реагирует, но если курсор (каретка) стоИт на текстбоксе, то с клавиатуры можно вводить сраяу. Что ая есьм и как енто побороть?


    Автор вопроса: Slater

    Ответ ожидается по этому адресу

       Скажите, пожалуйста, как написать программу, которая:
    1. Делает HTTP яапросы (GET, POST)
    2. По GET яапросу определяет ос и время.




    Ответы:


    Вопрос:

       Уважаемые мужчины, подскажите, пожалуйста, что означает "не удается инициализировать среду Visual Basic" и как с этим бороться, т.к. работа стоит, а я ничего не могу сделать.

    Ответ:

    Автор ответа: Duke

    Преставте Visual Basic и не майтесь дурью, это самый верный способ. Если это не помогло то я сам сочувствую.


    Вопрос:

       Уважаемые мужчины, подскажите, пожалуйста, что означает "не удается инициализировать среду Visual Basic" и как с этим бороться, т.к. работа стоит, а я ничего не могу сделать.

    Ответ:

    Автор ответа: Ревягин_Алексей

    Попробуй переставить VB


    Вопрос:

       Уважаемые мужчины, подскажите, пожалуйста, что означает "не удается инициализировать среду Visual Basic" и как с этим бороться, т.к. работа стоит, а я ничего не могу сделать.

    Ответ:

    Автор ответа: Артём Меняйленко

    Ну, если раньше ВБ работал, значит его пора переустановить. Если нет - или диск левый, или пора Windows переустановить (желательно с форматом, проверено на личном опыте).


    Вопрос:

       Уважаемые мужчины, подскажите, пожалуйста, что означает "не удается инициализировать среду Visual Basic" и как с этим бороться, т.к. работа стоит, а я ничего не могу сделать.

    Ответ:

    Автор ответа: Андрей Исаков

    Возможно кто-то стер какие-то файлы, необходимые для иницализации среды разработки. Обычно такой глюк (в любой программе) лечится переустановкой оной. Удачи!


    Вопрос:

       Как в Worde или Excele прочитать DocumentProperty (BuiltInProperty), для документа, не открывая его ? Например, Author или Comments.

    Ответ:

    Автор ответа: Андрей

    Посмотри на http://support.microsoft.com/default.aspx?scid=kb;EN-US;q224351


    Вопрос:

       Как в VB при нажатии кнопки с рисунком изменялся ее рисунок н другой?

    Ответ:

    Автор ответа: Ревягин_Алексей

    Используй Объект_MouseDown


    Вопрос:

       Как в VB при нажатии кнопки с рисунком изменялся ее рисунок н другой?

    Ответ:

    Автор ответа: Duke

    Если это обычная кнопка, то установите свойство Style =1-Graphical , а в свойстве DownPicture выберете путь к иконке которую вы хотите видеть при нажатии на кнопку.


    Вопрос:

       Как в VB при нажатии кнопки с рисунком изменялся ее рисунок н другой?

    Ответ:

    Автор ответа: Roman Mack

    Имеется кнопка cmdButton. Устанавливаем свойство Style в 1 (Graphical).

    With cmdButton
       .Picture = LoadPicture(App.Path & "\кнопка.bmp")
       .DownPicture = LoadPicture(App.Path & "\кнопка нажата.bmp")
    End With

    Хотя наверное проще в процессе разработки "ручками" указать в свойствах Picture и DownPicture нужные изображения.


    Вопрос:

       Как в VB при нажатии кнопки с рисунком изменялся ее рисунок н другой?

    Ответ:

    Автор ответа: Иван

    Помести на форму объект ImageList из библиотеки Microsoft Windows Common Controls 6.0. В него занеси 2 рисунка. Затем при загрузке формы впиши следующий код:

    Private Sub Form_Load()
    Command1.Picture = ImageList1.ListImages(1).Picture ' Где 1 - индекс картинки
    End Sub

    А при нажатии на кнопку

    Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Command1.Picture = ImageList1.ListImages(2).Picture
    End Sub

    Если необходимо, чтобы при отпускании кнопки рисунок возвращался на место пишем следующее:

    Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Command1.Picture = ImageList1.ListImages(1).Picture
    End Sub


    Вопрос:

       Как в VB при нажатии кнопки с рисунком изменялся ее рисунок н другой?

    Ответ:

    Автор ответа: Мунгалов Андрей

      используй две процедуры MOUSE_DOWN и MOUSE_UP на форме расположи кнопку и два элемета IMAGE в них загрузи разные картинки одна для простого состояния другая для нажатого. потом выставляешь свойство кнопки Style = 1, дальше вставляешь такой код:

    Option Explicit

    Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
         Command1.Picture = Image2.Picture
    End Sub

    Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
         Command1.Picture = Image1.Picture
    End Sub

    Private Sub Form_Load()
    Command1.Picture = Image1.Picture
    End Sub


    Вопрос:

       Как в VB при нажатии кнопки с рисунком изменялся ее рисунок н другой?

    Ответ:

    Автор ответа: Ильин Алексей

    Сохрани в свойство DownPicture твоей кнопки ссылку на картинку которая будет появляться когда кнопка будет нажата...


    Вопрос:

       Я с помощью функции SetWindowRgn устанавливаю регион. Но вот когда я его начинаю перемещать, то он остается на месте а перетаскивается только рамка. ВОПРОС: какие параметры поставить, или может есть специальная функция для перемещения региона???

    Ответ:

    Автор ответа: Ревягин_Алексей

        Какая рамка?

       1)Рамка окна
       2)или програмно созданая рамка

       если 1), то попробуй в установках Windows в свойствах папки в параметрах отображения пометить "перетаскивать содержимое окна" или как-то так если 2), то ищи ошибку в коде


    Вопрос:

       Я с помощью функции SetWindowRgn устанавливаю регион. Но вот когда я его начинаю перемещать, то он остается на месте а перетаскивается только рамка. ВОПРОС: какие параметры поставить, или может есть специальная функция для перемещения региона???

    Ответ:

    Автор ответа: Kurt Haeldar

    Функция есть, называется она OffsetRgn
    Объявление ее звучит так:
    Declare Function OffsetRgn Lib "gdi32" Alias "OffsetRgn" (ByVal hRgn As Long, ByVal x As Long, ByVal y As Long) As Long
    Параметры:
    ћ hrgn
    Сам регион
    ћ nXOffset
    смещение по Х
    ћ nYOffset
    Смещение по У


    Вопрос:

       Подскажите как средствами Visual Basic 6.0 разбить файл по 1,44Mb, а затем скопировать на дискету.

    Ответ:

    Автор ответа: Oleg Voloshin

    Мне кажется, это довольно несложная задача – надо читать файл в буфер кусками заданного размера (напр. 1.44 Мб), а потом из этого буфера выписывать в разные файлы. Можно сделать с использованием WinAPI љ- функций CreateFile, ReadFile, WriteFile а можно и с помощью функций ввода-вывода VB, только в этом случае читать файл надо в двоичном режиме.


    Вопрос:

       А как сделать переяагруяку или выключение компьютера программно (у меня Visual Basic 6.0)?

    Ответ:

    Автор ответа: Kurt Haeldar

    API функция SHExitWindowsEx поможет


    Вопрос:

       А как сделать переяагруяку или выключение компьютера программно (у меня Visual Basic 6.0)?

    Ответ:

    Автор ответа: Ревягин_Алексей

       Перезагрузка:
       shell "C:\WINDOWS\RUNDLL32.EXE shell32.dll,SHExitWindowsEx 2"

       Выключить:
       shell "C:\WINDOWS\RUNDLL32.EXE user.exe,exitwindows"

       Войти под другим именем:
       shell "C:\WINDOWS\RUNDLL.EXE shell32.dll,SHExitWindowsEx 0"


    Вопрос:

       А как сделать переяагруяку или выключение компьютера программно (у меня Visual Basic 6.0)?

    Ответ:

    Автор ответа: Иван

    Public Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long
      
    Public Const EWX_FORCE = 4
    Public Const EWX_LOGOFF = 0
    Public Const EWX_REBOOT = 2
    Public Const EWX_SHUTDOWN = 1
      
    Использование:
      
    ExitWindowsEx EWX_FORCE + EWX_REBOOT, 0 ' Перезагрузка
    ExitWindowsEx EWX_FORCE + EWX_SHUTDOWN, 1 ' Выключение


    Вопрос:

       А как сделать переяагруяку или выключение компьютера программно (у меня Visual Basic 6.0)?

    Ответ:

    Автор ответа: Duke

    'LOGOFF = 0
    'REBOOT = 2
    'SHUTDOWN = 1
    private Declare Function ExitWindowsEx _
                    Lib "user32" (ByVal uFlags As Long, _
                    ByVal dwReserved As Long) As Long
    Private Sub Form_Load()
    Call ExitWindowsEx 2, 0
    End Sub


    Вопрос:

       А как сделать переяагруяку или выключение компьютера программно (у меня Visual Basic 6.0)?

    Ответ:

    Автор ответа: Oleg Voloshin

    Почитай в MSDN описание функции WinAPI ExitWindowsEx, и там ты найдешь исчерпывающие ответы на все свои вопросы по этой теме.


    Вопрос:

       Подскажите как органияовать пауяу, менее 10мс. API-функция Sleep мне не подходит, так как имеет дискретность 10мс (в Win2000). Т.е. с ее помощью можно соядать пауяы 0, 10, 20, 30 мс и т.д., а мне надо дискретност хотя бы в 1мс.

    Ответ:

    Автор ответа: Oleg Voloshin

    Сделать паузу интервалом около 1 мс в Windows не представляется возможным, так как это не Realtime-система, и минимальный квант времени у нее равен около 20 мс J. Вот такие пирожки.


    Вопрос:

       Подскажите как органияовать пауяу, менее 10мс. API-функция Sleep мне не подходит, так как имеет дискретность 10мс (в Win2000). Т.е. с ее помощью можно соядать пауяы 0, 10, 20, 30 мс и т.д., а мне надо дискретност хотя бы в 1мс.

    Ответ:

    Автор ответа: Ревягин_Алексей

    попробуй десятичные дроби например:

    Sleep 0.1


    Вопрос:

       Подскажите кто янает, как данные, воявращаемые яапросом вставить в MSFlexGrid? Для доступа испольяую DAO.

    Ответ:

    Автор ответа: dMedia

    Private Sub FillGrid()
    On Error GoTo ErrTrapp
    Dim db As DAO.Database, rs As DAO.Recordset, SQL As String, i As Integer
    Set db = OpenDatabase([путь к базе], False, True)
    SQL = "SELECT * FROM [таблица];"
    Call FormatGridSearchDataParts
    Set rs = db.OpenRecordset(SQL)
    If rs.RecordCount <> 0 Then
    i=0
    MSFlexGrid1.FormatString="<№ |<Таблица №1|<Таблица №2|<Таблица №3"
             Do While Not rs.EOF
                  i=i+1
                  MSFlexGrid1.AddItem i & vbtab & rs.Fields(0) & vbTab & rs.Fields(1) & vbTab &
                  rs.Fields(2)
                  rs.MoveNext
             Loop
    Else
             MsgBox "По вашему запросу ничего не найдено!", vbInformation
    End If
    rs.Close
    db.Close
    Set rs = Nothing
    Set db = Nothing
    ErrTrapp:
    If Err.Number <> 0 Then MsgBox "Ошибка №: " & Err.Number & vbCrLf & Err.Description, vbCritical
    End Sub


    Вопрос:

       Подскажите кто янает, как данные, воявращаемые яапросом вставить в MSFlexGrid? Для доступа испольяую DAO.

    Ответ:

    Автор ответа: Мунгалов Андрей

    Private Function FillFG(strSQL)
    Set db = OpenDatabase(App.Path & "\твоя база.mdb", False, False)
    Set rs = db.OpenRecordset(strSQL)
    If rs.EOF Then
         Exit Function
    End If

    FG.Visible = True

    Do While Not rs.EOF
         With FG
             .TextMatrix(.Rows - 1, 0) = rs("ID")
             .TextMatrix(.Rows - 1, 1) = rs("FIO")
             .TextMatrix(.Rows - 1, 2) = rs("SCHET")
             .TextMatrix(.Rows - 1, 3) = rs("FIL")
             .TextMatrix(.Rows - 1, 4) = rs("SUMM")
             .Rows = .Rows + 1
         End With
    rs.MoveNext
    Loop
    FG.Rows = FG.Rows - 1
    rs.Close
    db.Close
    End Function

    потом вызываешь ее например вот так

      FillFG "SELECT * FROM ИмяТаблицы ORDER BY ИмяТаблицы.[Колонка] ASC"


    Вопрос:

       Подскажите кто янает, как данные, воявращаемые яапросом вставить в MSFlexGrid? Для доступа испольяую DAO.

    Ответ:

    Автор ответа: Кирилл

    Set MSHFlexGrid1.DataSource = de1.rsCom


    Вопрос:

       Подскажите пожалуйста, где можно вяять полное описание к API-функции "SystemParametersInfo", примеры работы с ней? Буду рад любой информации!

    Ответ:

    Автор ответа: Oleg Voloshin

    Попробуй поискать в MSDN.
    http://msdn.microsoft.com


    Вопрос:

       Подскажите пожалуйста, где можно вяять полное описание к API-функции "SystemParametersInfo", примеры работы с ней? Буду рад любой информации!

    Ответ:

    Автор ответа: Kurt Haeldar

    Вот что говорит о ней прога API-Guide:

    The SystemParametersInfo function queries or sets systemwide parameters. This function can also update the user profile while setting a parameter.
      
    Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As Any, ByVal fuWinIni As Long) As Long
      
    ћ uiAction
    Specifies the systemwide parameter to query or set. This parameter can be one of the following values:
    SPI_GETACCESSTIMEOUT
      Retrieves information about the time-out period associated with the accessibility features. The pvParam parameter must point to an ACCESSTIMEOUT structure that receives the information. Set the cbSize member of this structure and the uiParam parameter to sizeof(ACCESSTIMEOUT).
    SPI_GETANIMATION
      Retrieves the animation effects associated with user actions. The pvParam parameter must point to an ANIMATIONINFO structure that receives the information. Set the cbSize member of this structure and the uiParam parameter to sizeof(ANIMATIONINFO).
    SPI_GETBEEP
      Indicates whether the warning beeper is on.
      The pvParam parameter is a pointer to a BOOL that receives TRUE if the beeper is on, or FALSE if it is off.
    SPI_GETBORDER
      Retrieves the border multiplier factor that determines the width of a window’s sizing border. The pvParam parameter must point to an integer variable.
    SPI_GETDEFAULTINPUTLANG
      Returns the keyboard layout handle for the system default input language. The pvParam parameter must point to the 32-bit variable that receives the keyboard layout handle for the default language. The uiParam parameter is not used.
    SPI_GETDRAGFULLWINDOWS
      Determines whether dragging of full windows is enabled. The pvParam parameter must point to a BOOL variable that receives TRUE if enabled, or FALSE otherwise.
      Windows 95: This flag is supported only if Windows Plus! is installed. See SPI_GETWINDOWSEXTENSION.
    SPI_GETFASTTASKSWITCH
      This flag is obsolete. Previous versions of Windows use this flag to determine whether ALT+TAB fast task switching is enabled. Beginning with Windows 95 and Windows NT version 4.0, fast task switching is always enabled.
    SPI_GETFILTERKEYS
      Retrieves information about the FilterKeys accessibility feature. The pvParam parameter must point to a FILTERKEYS structure that receives the information. Set the cbSize member of this structure and the uiParam parameter to sizeof(FILTERKEYS).
    SPI_GETFONTSMOOTHING
      Indicates whether the font smoothing feature is enabled. This feature uses font anti-aliasing to make font curves appear smoother by painting pixels at different gray levels.
      The pvParam parameter is a pointer to a BOOL variable that receives TRUE if the feature is enabled, or FALSE if it is not.
      Windows 95: This flag is supported only if Windows Plus! is installed. See SPI_GETWINDOWSEXTENSION.
    SPI_GETGRIDGRANULARITY
      Retrieves the current granularity value of the desktop sizing grid. The pvParam parameter must point to an integer variable that receives the granularity.
    SPI_GETHIGHCONTRAST
      Windows 95 only: Retrieves information about the HighContrast accessibility feature. The pvParam parameter must point to a HIGHCONTRAST structure that receives the information. Set the cbSize member of this structure and the uiParam parameter to sizeof(HIGHCONTRAST).
    SPI_GETICONMETRICS
      Retrieves the metrics associated with icons. The pvParam parameter must point to an ICONMETRICS structure that receives the information. Set the cbSize member of this structure and the uiParam parameter to sizeof(ICONMETRICS).
    SPI_GETICONTITLELOGFONT
      Retrieves the logical font information for the current icon-title font. The uiParam parameter specifies the size of a LOGFONT structure, and the pvParam parameter must point to the LOGFONT structure to fill in.
    SPI_GETICONTITLEWRAP
      Determines whether icon-title wrapping is enabled. The pvParam parameter must point to a BOOL variable that receives TRUE if enabled, or FALSE otherwise.
    SPI_GETKEYBOARDDELAY
      Retrieves the keyboard repeat-delay setting. The pvParam parameter must point to an integer variable that receives the setting.
    SPI_GETKEYBOARDPREF
      Determines whether the user relies on the keyboard instead of the mouse, and wants applications to display keyboard interfaces that would otherwise be hidden. The pvParam parameter must point to a BOOL variable that receives TRUE if the user relies on the keyboard; the variable receives FALSE otherwise.
    SPI_GETKEYBOARDSPEED
      Retrieves the keyboard repeat-speed setting. The pvParam parameter must point to a DWORD variable that receives the setting.
    SPI_GETLOWPOWERACTIVE
      This flag is not supported for 32-bit applications on Windows NT or Windows 95.
      Windows 95 only: For 16-bit Windows applications, this value determines whether the low-power phase of screen saving is enabled or not. The pvParam parameter must point to a BOOL variable that receives TRUE if enabled, or FALSE if disabled.
    SPI_GETLOWPOWERTIMEOUT
      This flag is not supported for 32-bit applications on Windows NT or Windows 95.
      Windows 95 only: For 16-bit Windows applications, this value retrieves the time-out value for the low-power phase of screen saving. The pvParam parameter must point to an integer value that receives the value.
    SPI_GETMENUDROPALIGNMENT
      Determines whether pop-up menus are left-aligned or right-aligned, relative to the corresponding menu-bar item. The pvParam parameter must point to a BOOL variable that receives TRUE if left-aligned, or FALSE otherwise.
    SPI_GETMINIMIZEDMETRICS
      Retrieves the metrics associated with minimized windows. The pvParam parameter must point to a MINIMIZEDMETRICS structure that receives the information. Set the cbSize member of this structure and the uiParam parameter to sizeof(MINIMIZEDMETRICS).
    SPI_GETMOUSE
      Retrieves the two mouse threshold values and the mouse speed. The pvParam parameter must point to an array of three integers that receives these values. See mouse_event for further information.
    SPI_GETMOUSEHOVERHEIGHT
      Windows NT only: Gets the height, in pixels, of the rectangle within which the mouse pointer has to stay for TrackMouseEvent to generate a WM_MOUSEHOVER message. The height is returned in a UINT pointed to by the pvParam parameter.
    SPI_GETMOUSEHOVERTIME
      Windows NT only: Gets the time, in milliseconds, that the mouse pointer has to stay in the hover rectangle for TrackMouseEvent to generate a WM_MOUSEHOVER message. The time is returned in a UINT pointed to by the pvParam parameter.
    SPI_GETMOUSEHOVERWIDTH
      Windows NT only: Gets the width, in pixels, of the rectangle within which the mouse pointer has to stay for TrackMouseEvent to generate a WM_MOUSEHOVER message. The width is returned in a UINT pointed to by the pvParam parameter.
    SPI_GETMOUSEKEYS
      Retrieves information about the MouseKeys accessibility feature. The pvParam parameter must point to a MOUSEKEYS structure that receives the information. Set the cbSize member of this structure and the uiParam parameter to sizeof(MOUSEKEYS).
    SPI_GETMOUSETRAILS
      Windows 95 only: Indicates whether the Mouse Trails feature is enabled. This feature improves the visibility of mouse cursor movements by briefly showing a trail of cursors and quickly erasing them.
      The pvParam parameter is a pointer to an INT variable that receives a value. If the value is zero or 1, the feature is disabled. If the value is greater than 1, the feature is enabled and the value indicates the number of cursors drawn in the trail. The uiParam parameter is not used.
    SPI_GETNONCLIENTMETRICS
      Retrieves the metrics associated with the nonclient area of nonminimized windows. The pvParam parameter must point to a NONCLIENTMETRICS structure that receives the information. Set the cbSize member of this structure and the uiParam parameter to sizeof(NONCLIENTMETRICS).
    SPI_GETPOWEROFFACTIVE
      This flag is not supported for 32-bit applications on Windows NT or Windows 95.
      Windows 95 only: For 16-bit Windows applications, this value determines whether the power-off phase of screen saving is enabled or not. The pvParam parameter must point to a BOOL variable that receives TRUE if enabled, or FALSE if disabled.
    SPI_GETPOWEROFFTIMEOUT
      This flag is not supported for 32-bit applications on Windows NT or Windows 95.
      Windows 95 only: For 16-bit Windows applications, this value retrieves the time-out value for the power-off phase of screen saving. The pvParam parameter must point to an integer value that receives the value.
    SPI_GETSCREENREADER
      Windows 95 only: Determines whether a screen reviewer utility is running. A screen reviewer utility directs textual information to an output device, such as a speech synthesizer or Braille display. When this flag is set, an application should provide textual information in situations where it would otherwise present the information graphically.
      The pvParam parameter is a pointer to a BOOL variable that receives TRUE if a screen reviewer utility is running, or FALSE if it is not.
    SPI_GETSCREENSAVEACTIVE
      Determines whether screen saving is enabled. The pvParam parameter must point to a BOOL variable that receives TRUE if enabled, or FALSE otherwise.
    SPI_GETSCREENSAVETIMEOUT
      Retrieves the screen saver time-out value, in seconds. The pvParam parameter must point to an integer variable that receives the value.
    SPI_GETSERIALKEYS
      Windows 95 only: Retrieves information about the SerialKeys accessibility feature. The pvParam parameter must point to a SERIALKEYS structure that receives the information. Set the cbSize member of this structure and the uiParam parameter to sizeof(SERIALKEYS).
    SPI_GETSHOWSOUNDS
      Determines whether the Show Sounds accessibility flag is on or off. If it is on, the user requires an application to present information visually in situations where it would otherwise present the information only in audible form. The pvParam parameter must point to a BOOL variable that receives TRUE if the feature is on, or FALSE if it is off.
      Using this value is equivalent to calling GetSystemMetrics (SM_SHOWSOUNDS). That is the recommended call.
    SPI_GETSNAPTODEFBUTTON
      Windows NT only: Determines whether the snap-to-default-button feature is enabled. If enabled, the mouse cursor automatically moves to the default button, such as “OK” or “Apply”, of a dialog box. The pvParam parameter must point to a BOOL variable that receives TRUE if the feature is on, or FALSE if it is off.
    SPI_GETSOUNDSENTRY
      Retrieves information about the SoundSentry accessibility feature. The pvParam parameter must point to a SOUNDSENTRY structure that receives the information. Set the cbSize member of this structure and the uiParam parameter to sizeof(SOUNDSENTRY).
    SPI_GETSTICKYKEYS
      Retrieves information about the StickyKeys accessibility feature. The pvParam parameter must point to a STICKYKEYS structure that receives the information. Set the cbSize member of this structure and the uiParam parameter to sizeof(STICKYKEYS).
    SPI_GETTOGGLEKEYS
      Retrieves information about the ToggleKeys accessibility feature. The pvParam parameter must point to a TOGGLEKEYS structure that receives the information. Set the cbSize member of this structure and the uiParam parameter to sizeof(TOGGLEKEYS).
    SPI_GETWHEELSCROLLLINES
      Windows NT only: Gets the number of lines to scroll when the mouse wheel is rotated. The number of lines is returned in a UINT pointed to by pvParam. The default value is 3.
    SPI_GETWINDOWSEXTENSION
      Windows 95 only: Indicates whether the Windows extension, Windows Plus!, is installed. Set the uiParam parameter to 1. The pvParam parameter is not used. The function returns TRUE if the extension is installed, or FALSE if it is not.
    SPI_GETWORKAREA
      Retrieves the size of the working area. The working area is the portion of the screen not obscured by the tray. The pvParam parameter must point to the RECT structure that receives the coordinates of the working area.
    SPI_ICONHORIZONTALSPACING
      Sets the width of an icon cell. The uiParam parameter specifies the width, in pixels.
    SPI_ICONVERTICALSPACING
      Sets the height of an icon cell. The uiParam parameter specifies the height, in pixels.
    SPI_LANGDRIVER
      Not implemented.
    SPI_SCREENSAVERRUNNING
      Windows 95 only: Used internally; applications should not use this flag.
    SPI_SETACCESSTIMEOUT
      Sets the time-out period associated with the accessibility features. The pvParam parameter must point to an ACCESSTIMEOUT structure that contains the new parameters. Set the cbSize member of this structure and the uiParam parameter to sizeof(ACCESSTIMEOUT).
    SPI_SETANIMATION
      Sets the animation effects associated with user actions. The pvParam parameter must point to an ANIMATIONINFO structure that contains the new parameters. Set the cbSize member of this structure and the uiParam parameter to sizeof(ANIMATIONINFO).
    SPI_SETBEEP
      Turns the warning beeper on or off. The uiParam parameter specifies TRUE for on, or FALSE for off.
    SPI_SETBORDER
      Sets the border multiplier factor that determines the width of a window’s sizing border. The uiParam parameter specifies the new value.
    SPI_SETDEFAULTINPUTLANG
      Sets the default input language for the system shell and applications. The specified language must be displayable using the current system character set. The uiParam parameter is not used. The pvParam parameter must point to a 32-bit variable that contains the keyboard layout handle for the default language.
    SPI_SETDESKPATTERN
      Sets the current desktop pattern by causing Windows to read the Pattern= setting from the WIN.INI file.
    SPI_SETDESKWALLPAPER
      Sets the desktop wallpaper. The pvParam parameter must point to a null-terminated string containing the name of a bitmap file.
    SPI_SETDOUBLECLICKTIME
      Sets the double-click time for the mouse to the value of the uiParam parameter. The double-click time is the maximum number of milliseconds that can occur between the first and second clicks of a double-click.
    SPI_SETDOUBLECLKHEIGHT
      Sets the height of the double-click rectangle to the value of the uiParam parameter.
      The double-click rectangle is the rectangle within which the second click of a double-click must fall for it to be registered as a double-click.
    SPI_SETDOUBLECLKWIDTH
      Sets the width of the double-click rectangle to the value of the uiParam parameter.
      The double-click rectangle is the rectangle within which the second click of a double-click must fall for it to be registered as a double-click.
    SPI_SETDRAGFULLWINDOWS
      Sets dragging of full windows either on or off. The uiParam parameter specifies TRUE for on, or FALSE for off.
      Windows 95: This flag is supported only if Windows Plus! is installed. See SPI_GETWINDOWSEXTENSION.
    SPI_SETDRAGHEIGHT
      Sets the height, in pixels, of the rectangle used to detect the start of a drag operation.
      See SM_CXDRAG and SM_CYDRAG in the table under the nIndex parameter of GetSystemMetrics.
    SPI_SETDRAGWIDTH
      Sets the width, in pixels, of the rectangle used to detect the start of a drag operation.
      See SM_CXDRAG and SM_CYDRAG in the table under the nIndex parameter of GetSystemMetrics.
    SPI_SETFASTTASKSWITCH
      This flag is obsolete. Previous versions of Windows use this flag to enable or disable ALT+TAB fast task switching. Beginning with Windows 95 and Windows NT version 4.0, fast task switching is always enabled.
    SPI_SETFILTERKEYS
      Sets the parameters of the FilterKeys accessibility feature. The pvParam parameter must point to a FILTERKEYS structure that contains the new parameters. Set the cbSize member of this structure and the uiParam parameter to sizeof(FILTERKEYS).
    SPI_SETFONTSMOOTHING
      Enables or disables the font smoothing feature, which uses font anti-aliasing to make font curves appear smoother by painting pixels at different gray levels.
      To enable the feature, set the uiParam parameter to TRUE. To disable the feature, set uiParam to FALSE.
      Windows 95: This flag is supported only if Windows Plus! is installed. See SPI_GETWINDOWSEXTENSION.
    SPI_SETGRIDGRANULARITY
      Sets the granularity of the desktop sizing grid to the value of the uiParam parameter.
    SPI_SETHANDHELD
      Used internally; applications should not use this value.
    SPI_SETHIGHCONTRAST
      Windows 95 only: Sets the parameters of the HighContrast accessibility feature. The pvParam parameter must point to a HIGHCONTRAST structure that contains the new parameters. Set the cbSize member of this structure and the uiParam parameter to sizeof(HIGHCONTRAST).
    SPI_SETICONMETRICS
      Sets the metrics associated with icons. The pvParam parameter must point to an ICONMETRICS structure that contains the new parameters. Set the cbSize member of this structure and the uiParam parameter to sizeof(ICONMETRICS).
    SPI_SETICONTITLELOGFONT
      Sets the font that is used for icon titles. The uiParam parameter specifies the size of a LOGFONT structure, and the pvParam parameter must point to a LOGFONT structure.
    SPI_SETICONTITLEWRAP
      Turns icon-title wrapping on or off. The uiParam parameter specifies TRUE for on, or FALSE for off.
    SPI_SETKEYBOARDDELAY
      Sets the keyboard repeat-delay setting to the value of the uiParam parameter.
    SPI_SETKEYBOARDPREF
      Windows 95 only: Sets the keyboard preference. The uiParam parameter specifies TRUE if the user relies on the keyboard instead of the mouse, and wants applications to display keyboard interfaces that would otherwise be hidden; uiParam is FALSE otherwise.
    SPI_SETKEYBOARDSPEED
      Sets the keyboard repeat-speed setting to the value of the uiParam parameter.
    SPI_SETLANGTOGGLE
      Sets the hot key set for switching between input languages. The uiParam and pvParam parameters are not used. The value sets the shortcut keys in the keyboard property sheets by reading the registry again. The registry must be set before this flag is used. the path in the registry is \HKEY_CURRENT_USER\keyboard layout\toggle. Valid values are “1” = alt+shift, “2” = ctrl+shift, and “3” = none.
    SPI_SETLOWPOWERACTIVE
      Windows 95 only: Activates or deactivates the low-power phase of screen saving. Set uiParam to 1 to activate, or 0 to deactivate. The pvParam parameter must be NULL.
    SPI_SETLOWPOWERTIMEOUT
      Windows 95 only: Retrieves the time-out value, in seconds, for the low-power phase of screen saving. The uiParam parameter specifies the new value. The pvParam parameter must be NULL.
    SPI_SETMENUDROPALIGNMENT
      Sets the alignment value of pop-up menus. The uiParam parameter specifies TRUE for right alignment, or FALSE for left alignment.
    SPI_SETMINIMIZEDMETRICS
      Sets the metrics associated with minimized windows. The pvParam parameter must point to a MINIMIZEDMETRICS structure that contains the new parameters. Set the cbSize member of this structure and the uiParam parameter to sizeof(MINIMIZEDMETRICS).
    SPI_SETMOUSE
      Sets the two mouse threshold values and the mouse speed. The pvParam parameter must point to an array of three integers that specifies these values. See mouse_event for further information.
    SPI_SETMOUSEBUTTONSWAP
      Swaps or restores the meaning of the left and right mouse buttons. The uiParam parameter specifies TRUE to swap the meanings of the buttons, or FALSE to to restore their original meanings.
    SPI_SETMOUSEHOVERHEIGHT
      Windows NT only: Sets the height, in pixels, of the rectangle within which the mouse pointer has to stay for TrackMouseEvent to generate a WM_MOUSEHOVER message. The height is set from the uiParam parameter.
    SPI_SETMOUSEHOVERTIME
      Windows NT only: Sets the time, in milliseconds, that the mouse pointer has to stay in the hover rectangle for TrackMouseEvent to generate a WM_MOUSEHOVER message. This is used only if you pass HOVER_DEFAULT in the dwHoverTime parameter in the call to TrackMouseEvent. The time is set from the uiParam parameter.
    SPI_SETMOUSEHOVERWIDTH
      Windows NT only: Sets the width, in pixels, of the rectangle within which the mouse pointer has to stay for TrackMouseEvent to generate a WM_MOUSEHOVER message. The width is set from the uiParam parameter.
    SPI_SETMOUSEKEYS
      Sets the parameters of the MouseKeys accessibility feature. The pvParam parameter must point to a MOUSEKEYS structure that contains the new parameters. Set the cbSize member of this structure and the uiParam parameter to sizeof(MOUSEKEYS).
    SPI_SETMOUSETRAILS
      Windows 95 only: Enables or disables the Mouse Trails feature, which improves the visibility of mouse cursor movements by briefly showing a trail of cursors and quickly erasing them.
      To disable the feature, set the uiParam parameter to zero or 1. To enable the feature, set uiParam to a value greater than 1 to indicate the number of cursors drawn in the trail.
    SPI_SETNONCLIENTMETRICS
      Sets the metrics associated with the nonclient area of nonminimized windows. The pvParam parameter must point to a NONCLIENTMETRICS structure that contains the new parameters. Set the cbSize member of this structure and the uiParam parameter to sizeof(NONCLIENTMETRICS).
    SPI_SETPENWINDOWS
      Windows 95 only: Specifies that pen windows is being loaded or unloaded. The uiParam parameter is TRUE when loading and FALSE when unloading pen windows. The pvParam parameter is NULL.
    SPI_SETPOWEROFFACTIVE
      Windows 95 only: Activates or deactivates the power-off phase of screen saving. Set uiParam to 1 to activate, or 0 to deactivate. The pvParam parameter must be NULL.
    SPI_SETPOWEROFFTIMEOUT
      Windows 95 only: Retrieves the time-out value, in seconds, for the power-off phase of screen saving. The uiParam parameter specifies the new value. The pvParam parameter must be NULL.
    SPI_SETSCREENREADER
      Windows 95 only: Indicates whether a screen review utility is running. The uiParam parameter specifies TRUE for on, or FALSE for off.
    SPI_SETSCREENSAVEACTIVE
      Sets the state of the screen saver. The uiParam parameter specifies TRUE to activate screen saving, or FALSE to deactivate it.
    SPI_SETSCREENSAVETIMEOUT
      Sets the screen saver time-out value to the value of the uiParam parameter. This value is the amount of time, in seconds, that the system must be idle before the screen saver activates.
    SPI_SETSERIALKEYS
      Windows 95 only: Sets the parameters of the SerialKeys accessibility feature. The pvParam parameter must point to a SERIALKEYS structure that contains the new parameters. Set the cbSize member of this structure and the uiParam parameter to sizeof(SERIALKEYS).
    SPI_SETSHOWSOUNDS
      Sets the ShowSounds accessibility feature as on or off. The uiParam parameter specifies TRUE for on, or FALSE for off.
    SPI_SETSNAPTODEFBUTTON
      Windows NT only: Enables or disables the snap-to-default-button feature. If enabled, the mouse cursor automatically moves to the default button, such as “OK” or “Apply”, of a dialog box. Set the uiParam parameter to TRUE to enable the feature, or FALSE to disable it.
    SPI_SETSOUNDSENTRY
      Sets the parameters of the SoundSentry accessibility feature. The pvParam parameter must point to a SOUNDSENTRY structure that contains the new parameters. Set the cbSize member of this structure and the uiParam parameter to sizeof(SOUNDSENTRY). SPI_SETSTICKYKEYS
      Sets the parameters of the StickyKeys accessibility feature. The pvParam parameter must point to a STICKYKEYS structure that contains the new parameters. Set the cbSize member of this structure and the uiParam parameter to sizeof(STICKYKEYS). SPI_SETTOGGLEKEYS
      Sets the parameters of the ToggleKeys accessibility feature. The pvParam parameter must point to a TOGGLEKEYS structure that contains the new parameters. Set the cbSize member of this structure and the uiParam parameter to sizeof(TOGGLEKEYS). SPI_SETWHEELSCROLLLINES
      Windows NT only: Sets the number of lines to scroll when the mouse wheel is rotated. The number of lines is set from the uiParam parameter.
      The number of lines is the suggested number of lines to scroll when the mouse wheel is rolled without using modifier keys. If the number is 0, then no scrolling should occur. If the number of lines to scroll is greater than the number of lines viewable, and in particular if it is WHEEL_PAGESCROLL (#defined as UINT_MAX), the scroll operation should be interpreted as clicking once in the page down or page up regions of the scroll bar.
    SPI_SETWORKAREA
      Sets the size of the work area. The work area is the portion of the screen not obscured by the taskbar. The pvParam parameter must point to the RECT structure that contains the coordinates of the work area.
      
    ћ uiParam
    Depends on the system parameter being queried or set. For more information about systemwide parameters, see the uiAction parameter. If not otherwise indicated, specify zero.
      
    ћ pvParam
    Depends on the system parameter being queried or set. For more information about systemwide parameters, see the uiAction parameter. If not otherwise indicated, specify NULL.
      
    ћ fWinIni
    If a system parameter is being set, specifies whether the user profile is to be updated, and if so, whether the WM_SETTINGCHANGE message is to be broadcast to all top-level windows to notify them of the change. This parameter can be zero or can be one of the following values:
    SPIF_UPDATEINIFILE
      Writes the new system-wide parameter setting to the user profile.
    SPIF_SENDCHANGE
      Broadcasts the WM_SETTINGCHANGE message after updating the user profile.
    SPIF_SENDWININICHANGE
      Same as SPIF_SENDCHANGE.


    Вопрос:

       Как открыть конкретный файл в Екселе их VB6. Иявлечьданные-ия столбца, обработатьи вернуть на место.

    Ответ:

    Автор ответа: Oleg Voloshin

    Делается это средствами OLE-автоматизации. Создаешь объект Exel, потом используешь его методы для манипулирования всем, чем угодно в Exel-файле, и потом закрываешь файл, и удаляешь объект. Если интересно, могу прислать пример – когда-то что-то подобное делал. Понадобится – пиши!


    Вопрос:

       Как послать строку в текстовое поле чужого окна?

    Ответ:

    Автор ответа: P@Ssword

    SendKeys "CTPOKA"


    Можете заполнить эту форму, либо отослать вопрос СЮДА

    Форма для добавления нового вопроса в этот раздел. Информация отсылается по E-mail владельцу сайта.
    Текст сообщения:
    Ваше имя
    E-mail для ответа

    наверх


    Выпуск подготовили:

    Сурменок Павел