Visual Basic на практике + CD

Гайдар Магдануров

Введение 9
Глава 1. Среда разработки Visual Basic 6 11
Знакомство с интегрированной средой разработки 11
Основные возможности среды разработки 12
Панель инструментов 14
Дизайнер форм 16
Редактор меню 18
Редактор кода 19
Клавиши быстрого доступа в редакторе кода 20
Настройка среды разработки 22
Вкладка Editor 23
Вкладка Editor Format 25
Вкладка General 26
Вкладка Docking 27
Вкладка Environment 28
Вкладка Advanced 28
Вспомогательные инструменты редактора кода 29
Утилита для создания заготовок процедур 29
Утилита для генерации заготовок кода классов и коллекций 30
Браузер объектов 32
Использование отладчика Visual Basic 33
Точки останова 34
Окно Immediate 36
Окно Locals 37
Окно Watch 38
Окно Call Stack 41
Visual Data Manager (Визуальный менеджер данных), инструмент для работы с базами данных 43
Поддерживаемые форматы баз данных 43
Соединение с базой данных c использованием ODBC 44
Работа с базой данных 48
Глава 2. Графический интерфейс 51
Поддержка интерфейса Windows XP 51
Элементы управления и изменение размеров формы 51
Использование системных иконок 53
Использование схемы оформления Windows XP для стандартных элементов управления Windows 55
Определение версии Microsoft Windows 59
Прозрачная форма 61
Изменение регистра символов, вводимых в текстовое окно 64
Мигающие заголовки окон 66
Надпись как гиперссылка 68
Динамическое создание элементов управления 71
Реализация Drag&Drop 79
Работа с мышью 80
Как установить время двойного нажатия клавиши мыши 84
Определение положения курсора мыши 84
Переместить курсор мыши в заданное место 85
Программная замена кнопок мыши 85
Скрыть/показать курсор мыши 85
Реализация автоматического дополнения выпадающего списка 86
Глава 3. Работа с текстом 89
Регулярные выражения 89
Простейшее регулярное выражение 90
Спецсимволы 91
Символы начала и конца строки 93
Символы повтора и группировки 93
Еще несколько спецсимволов 93
Символьные классы 94
Ответы на вопросы 96
Заключение 97
Конвертация текста из RTF в HTML 98
Проверка орфографии с помощью Microsoft Word 101
Определение позиции курсора ввода в текстовом поле 102
Повышение скорости замены в тексте 106
Глава 4. Работа с сетью 115
Использование компонента Winsock 115
Выбор протокола 115
Установка протокола 116
Определение имени компьютера 116
Основы TCP-соединения 116
Создание простого TCP-сервера 117
Создание клиентского TCP-приложения 118
Обработка более чем одного запроса на установление соединения 120
Основы UDP 121
Пример написания приложений "клиент-сервер" 124
Немного теории 124
Общее описание 125
Реализация сервера 128
Реализация клиента 136
Сложности и проблемы 140
Заключение 141
Электронная почта 141
Общие принципы работы почтового сервера 141
Работа с электронной почтой 142
Создание веб-сервера 145
Простейший веб-сервер 145
Глава 5. Мультимедиа 153
Работа с трехмерной графикой 153
Подготовка к работе 154
Инициализация Direct3D 154
Рисуем плоские фигуры 157
ZBuffer 160
3D, перспектива и матрицы 162
Рисуем цилиндр. TriangleStrip 167
Текстурирование 169
Индексирование вертексов 172
Нормали и свет 175
Материал 178
Организация проекта 179
Мип-мэппинг, фильтрация текстур 183
Проверка совместимости. D3DCAPS8 186
Мультитекстурирование 187
Использование прозрачности 192
Использование моделей. D3DXMesh 196
Имитация отражения. Spherical Environment Mapping 199
Преобразование содержимого моделей 201
Приближение к реальности 204
Шейдер 209
Работа со звуком 210
Воспроизведение звука 210
Захват звука 214
Глава 6. Работа с данными 221
Создание и использование новой базы данных 221
Создание новой базы данных 221
Работа с базой данных 222
Асинхронная работа с базами данных 231
Подключение в фоновом режиме 232
Выполнение операций в фоновом режиме 235
Работа с данными в фоновом режиме 238
Работа с объектом ADODB.Command 242
Запрос с параметрами 246
Вызов хранимой процедуры 247
Подготовленные запросы 250
Использование потоков ADO 252
Количество измененных при выполнении запроса записей 253
Текстовый файл как база данных 253
Глава 7. Разное 269
Создание консольного приложения 269
Работа с файлами File System Object 274
Создание папки по несуществующему пути 279
Рекурсивный поиск папок 280
Получение пути к директории Windows 283
Открытие файла в приложении по умолчанию 284
Скачивание файла из сети Интернет 285
Создание ярлыка 285
Закрытие окна другой программы 285
Получение имени класса, которому принадлежит окно 286
Найти и обезвредить 287
Поиск окна и изменение его заголовка 288
Вызов метода по имени 289
Добавление иконок в меню 289
Создание всплывающего меню 291
Создание меню с кнопкой 292
Создание меню 293
Работа с реестром 294
Функция SaveSetting 294
Функция DeleteSetting 295
Функция GetSetting 295
Функция GetAllSettings 295
Работа с реестром с использованием API-функций 296
Работа с бинарным файлом ресурсов 301
Получение информации о текущих процессах 302
Использование SendMessage 304
Количество процессов с заданным именем 305
Изменение настроек дисплея 312
Пример использования 314
Получение установленных шрифтов 316
Оптимизация приложений 318
Создание библиотеки ресурсов 319
Оптимизация потребления ресурсов системы 319
Оптимизация скорости исполнения приложения 320
Установка горячих клавиш для активирования своей программы 322
Связывание расширения с программой 323
Глава 8. Под капотом 327
Тип данных Double 327
Сравнение числа со строкой 332
Устройство строкового типа 333
Теория 335
Исследование: возврат строк из API-функций и восстановление строки по указателю 336
Заключение 338
Функции для работы с указателями 339
Сущность массивов в Visual Basic 340
Вызов функций по указателю 345
Прямой вызов CallWindowProc 347
И в обход... 348
В объектно-ориентированный обход... 351
Сусанин отдыхает... 353
Применимость 356
И последнее 357
Работа с COM-объектами, не поддерживающими IDispatch 357
Работа с описателями 359
Обнаружение скрытых процессов 366
"Убиваем" антивирус Касперского 374
Занятые файлы: перечисление 377
Занятые файлы. Закрытие чужих описателей 380
Занятые файлы. Копирование 383
Доступ к безымянным параметрам 386
Работа с Рабочими столами и семафорами 387
Удаление приложения после завершения работы 390
Внедрение VB-кода в другие процессы 394
Использование фиберов в VB для одновременного выполнения нескольких задач 401
Использование фиберов в перечислителях 404
Перечислители 404
Фиберы 406
Пример 407
Заключение 411
Использование фиберов для расщепления выполнения процедуры 411
Расщепление выполнения программы 411
Устройство фиберов 412
Расщепление фиберов 415
Приложение. Псевдокод функций Windows API, работающих с фиберами 420
Как пометить свой объект как безопасный для использования в сценариях 428
Глава 9. Дополнительная полезная информация 429
Сообщения об ошибках Visual Basic 429
Основные свойства формы 456
Приложение. Описание компакт-диска 465
Предметный указатель