Главная » Статьи для тега "windows"

Вызов подсистемы

Добавлено Дата: 19 March, 2012 категория: Программирование звука

B функции обратного вызова используется стандартный метод согласования характерного для языка C механизма обратных вызовов с классами C++. Как и большинство систем, разрешающих  использовать обратные  вызовы, Windows  позволяет применить  единственный  указатель,  который  будет  передаваться  этой  функции. (B Windows параметр dwInstance описывается как DWORD, однако он почти всегда используется для передачи указателя.) Я решил в этом указателе хранить значение this. Функция обратного вызова получает этот параметр и применяет его для передачи сообщения в объект. Вот таким образом функция WaveOutCallback преобразует вызов функции языка C в инициирование метода языка C++.

Читать »

Динамически компонуемые библиотеки

Добавлено Дата: 10 March, 2012 категория: Delphi

Что такое библиотека DLL?

Динамически  компонуемые библиотеки —  это  программные  модули,  содержащие код, данные или  ресурсы, которые могут совместно использоваться несколькими при ложениями Windows.  Одно  из основных назначений библиотек DLL —  позволить при ложениям загружать  участки  кода во время  выполнения (динамически), а не компоно вать их в само приложение в процессе компиляции (статически). Как следствие, один и тот  же код,  содержащийся в библиотеке DLL,  смогут одновременно использовать не сколько  приложений. Так, файлы библиотек Kernel32.dll, User32.dll и GDI32.dll являются теми тремя  китами, на которые опирается система  Win32. Файл Ker- nel32.dll (ядро), например, отвечает за управление памятью, процессами и потоками. Файл User32.dll содержит функции пользовательского интерфейса, необходимые для создания окон  и обработки сообщений Win32. И, наконец, на файл  GDI32.dll возло жена работа с графикой. Существуют и другие системные библиотеками DLL, например AdvAPI32.dll и ComDlg32.dll, которые предназначены для обеспечения работы с системным реестром и диалоговыми окнами общего назначения.

Читать »

Внеприоритетный поток

Добавлено Дата: 10 March, 2012 категория: Delphi

(fiber) — это своего  рода поток, расписанием периодов вы полнения которого приходится управлять самостоятельно. Подобно обычным пото кам, внеприоритетный поток  обладает информацией о состоянии и контексте испол нения форм, своим  собственным стеком  и доступом  к регистрам процессора. Но,  в отличие от  обычного потока, расписание периодов выполнения внеприоритетного потока не контролируется операционной системой. Вся ответственность за переклю чение процесса выполнения между несколькими внеприоритетными потоками лежит на разработчике. В процессе разработки приложения применение внеприоритетных потоков редко  оказывается предпочтительнее многопоточной архитектуры. Исклю чение составляют те редкие случаи,  когда можно  получать  определенные преимуще ства от использования нескольких независимых стеков  или необходим прямой доступ к регистрам процессора в обход всех этих  сложностей, связанных с синхронизацией обычных потоков.

Читать »

Приостановка и возобновление потока

Добавлено Дата: 7 March, 2012 категория: Delphi

Давайте вспомним, что  говорилось в этой  главе  ранее о конструкторе Create() класса TThread. Как уже было сказано, поток  может быть создан в приостановленном состоянии, и для того  чтобы  он начал  выполняться, необходимо вызвать метод  Re- sume(). Логично предположить, что  поток  может  быть  приостановлен и возобнов лен динамически. Эта задача решается с помощью  методов Suspend() и Resume().

Читать »

События и сообщения Delphi

Добавлено Дата: 7 March, 2012 категория: Delphi

Те, кому уже приходилось создавать приложения Windows традиционными методами, безусловно оценят простоту использования событий Delphi. Исключается всякая  необхо димость  организации перехвата сообщений Windows,  их обработки, анализа и т.д. Более подробная информация по этой теме приведена в главе 3, “Приключения сообщения”.

Читать »

Расширенные средства воспроизведения видеофайлов

Добавлено Дата: 6 March, 2012 категория: Silverlight

Вы уже много знаете о воспроизведении звука и видео в приложениях Silverlight, од­нако есть еще несколько нюансов, которые при работе с видео помогут вам получить наилучшие результаты. В первую очередь, нужно правильно выбрать оптимальные па­раметры видео, т.е. формат видеофайла, разрешение и битрейт. Рассмотрите возмож­ность применения потокового режима для оптимизации производительности сети. Добавьте дополнительные средства, такие как маркеры. И наконец, можете реализо­вать наиболее впечатляющие эффекты, доступные в Silverlight, например добавить ви­део в качестве фона элементов интерфейса с помощью объекта VideoBrush. Все эти темы рассматриваются в следующих разделах.

Читать »

Создание многопоточных приложений

Добавлено Дата: 6 March, 2012 категория: Delphi

Концепция потоков

Поток (thread) — это объект операционной системы, который представляет собой отдельный путь выполнения программы внутри  определенного процесса. Каждое приложение Win32 имеет, по крайней мере,  один  поток, обычно называемый первич ным, или  главным, но  приложения имеют  право  создавать дополнительные потоки, предназначенные для выполнения других задач.

Читать »

Совместимость Delphi и Kylix

Добавлено Дата: 5 March, 2012 категория: Delphi

Реализуя  приложение с высокой степенью совместимости между Delphi  и Kylix, не обходимо учитывать тот факт, что технология VCL применима только  для Windows. Ес ли необходимо создать  межплатформенное приложение или  компонент, то  придетсявоспользоваться библиотекой компонентов для X платформы (CLX — Component Library for X platform), которая в настоящий момент поддерживает и Delphi  6, и Kylix. Более  под робная информация о платформе CLX приведена в главах 10, “Архитектура компонен тов: VCL и CLX” , и 13, “Разработка компонентов CLX”. В библиотеку CLX входят четы ре основных компонента.

Читать »

Взаимосвязь сообщений  и событий

Добавлено Дата: 5 March, 2012 категория: Delphi

Теперь уже сказано достаточно, чтобы  понять, что  система событий Delphi пред ставляет собой  интерфейс для взаимодействия с сообщениями Windows,  по крайней мере — с некоторой их частью.  Многие  события компонентов библиотеки VCL непо средственно связаны с сообщениями Windows типа WM_XXX. В табл. 3.3 приведены ос новные события компонентов библиотеки VCL и соответствующие им сообщения Windows.

Читать »

Нестандартные сообщения

Добавлено Дата: 4 March, 2012 категория: Delphi

До сих пор обсуждались обычные сообщения Windows (начинающиеся префиксом WM_XXX). Теперь обсудим  две другие  немаловажные категории: уведомляющие сооб щения и пользовательские сообщения.

Уведомляющие сообщения

Уведомляющие сообщения (notification messages), или уведомления (notifications), пред

Читать »

Элементы

Добавлено Дата: 4 March, 2012 категория: Silverlight

Теперь, ознакомившись с основами разметки XAML, принципами размещения элементов и событиями мыши и клавиатуры, вы готовы к изучению элемен­тов Silverlight, позволяющих создавать как простые, так и сложные пользовательские интерфейсы.

В этой главе приведен обзор базовых элементов Silverlight. Здесь вы ознакомитесь с элементами, с которыми до сих пор не встречались. Сначала в главе рассматривается вывод форматированного текста с помощью элемента TextBlock и растровых изобра­жений с помощью элемента Image. Затем вы ознакомитесь с элементами управления разных типов, включая кнопки и всплывающие подсказки. И наконец, мы рассмотрим несколько специализированных элементов, таких как списки, раскрывающиеся списки, флажки и т.д. Прочитав главу до конца, вы будете хорошо знакомы с главными компо­нентами страницы Silverlight.

Читать »

Обработка сообщений — условие обязательное

Добавлено Дата: 3 March, 2012 категория: Delphi

В отличие от событий Delphi, обработка сообщений является обязательной и не мо жет  выполняться или  не выполняться по усмотрению программиста. Обычно, если  в программе объявлено о проведении собственной обработки сообщений, то система Windows  ожидает выполнения некоторых связанных с ней  предопределенных дейст вий.  Чаще  всего компоненты VCL выполняют большую часть  обработки своими  встро енными средствами, для доступа к которым программисту достаточно лишь вызвать об работчик базового класса  с помощью директивы inherited. Общая  схема  выглядит примерно так: собственно в обработчике сообщения должны  выполняться лишь те дей ствия, которые нужны  для приложения, а для выполнения всех  остальных действий, необходимых системе Windows,  следует  с  помощью директивы  inherited вызвать унаследованный метод.

Читать »

Обзор SQL Server 2005 Everywhere Edition

Добавлено Дата: 3 March, 2012 категория: Microsoft SQL Server, Базы данных

Несмотря на то что SQL Everywhere представляет собой полностью переработанный продукт, обладающий большим количеством справочного материала и документации, чем его предшественники, краткий экскурс в историю развития этого продукта будет не лишним.

История

Читать »

Система сообщений Delphi

Добавлено Дата: 3 March, 2012 категория: Delphi

Подпрограммы библиотеки VCL выполняют существенную часть  обработки сообще ний  Windows в приложении. В частности, цикл сообщений встроен в модуль Forms биб лиотеки VCL, благодаря чему прикладному программисту не нужно беспокоиться о выбор ке сообщений из очереди и передаче их соответствующим процедурам окон. Кроме  того, Delphi  помещает информацию из записи типа TMsg в собственную запись типа TMessage, определение которой приведено ниже.

Читать »

Принципы работы системы сообщений Windows

Добавлено Дата: 2 March, 2012 категория: Delphi

Система сообщений Windows состоит из трех компонентов.

•  Очередь сообщений  (Message  queue). Windows  поддерживает отдельную  очередь сообщений для каждого  приложения. Приложение Windows  должно  получать сообщения из этой очереди и передавать их соответствующему окну.

Читать »