Валентин Озеров - Советы по Delphi. Версия 1.0.6

Здесь есть возможность читать онлайн «Валентин Озеров - Советы по Delphi. Версия 1.0.6» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Советы по Delphi. Версия 1.0.6: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Советы по Delphi. Версия 1.0.6»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Советы по Delphi. Версия 1.0.6 — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Советы по Delphi. Версия 1.0.6», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

NewString:= 'C:\';

ClickedOK:= InputQuery('Database Path', 'Path: –> C:\DELPHI\DEMOS\DATA', NewString);

if ClickedOK then begin

Database1.DatabaseName:= 'MyNewAlias';

Database1.DriverName:= 'STANDARD';

Database1.Params.Clear;

Database1.Params.Add('Path=' + NewString);

Table1.DatabaseName:= 'MyNewAlias';

Table1.TableName:= 'CUSTOMER';

Table1.Active:= True;

DataSource1.DataSet:= Table1;

DBGrid1.DataSource:= DataSource1;

end;

end;

3. Запускаем приложение.

Информация о псевдонимах BDE

Как через конфигурацию IDAPI получить физический каталог расположения базы данных, зная ее псевдоним?

Обратите внимание на метод GetAliasParams класса TSession.

Возвращенная строка будет содержать искомый путь.

Я пользуюсь следующей функцией:

uses DbiProcs, DBiTypes;

function GetDataBaseDir(const Alias : string): String;

(* Возвращает каталог расположения базы данных по заданному псевдониму

(без обратного слеша) *)

var

sp: PChar;

Res: pDBDesc;

begin

try

New(Res);

sp:= StrAlloc(length(Alias)+1);

StrPCopy(sp,Alias);

if DbiGetDatabaseDesc(sp,Res) = 0 then Result:= StrPas(Res^.szPhyName)

else Result:= '';

finally

StrDispose(sp);

Dispose(Res);

end;

end;

Мультимедиа

Аудио-компакт

Получение идентификатора диска

Как получить идентификатор находящегося в CD-ROM'е аудио-компакта?

const

MCI_INFO_PRODUCT = $00000100;

MCI_INFO_FILE = $00000200;

MCI_INFO_MEDIA_UPC = $00000400;

MCI_INFO_MEDIA_IDENTITY = $00000800;

MCI_INFO_NAME = $00001000;

MCI_INFO_COPYRIGHT = $00002000;

{ блок параметров для командного сообщения MCI_INFO }

type

PMCI_Info_ParmsA = ^TMCI_Info_ParmsA;

PMCI_Info_ParmsW = ^TMCI_Info_ParmsW;

PMCI_Info_Parms = PMCI_Info_ParmsA;

TMCI_Info_ParmsA = record

dwCallback: DWORD;

lpstrReturn: PAnsiChar;

dwRetSize: DWORD;

end;

TMCI_Info_ParmsW = record

dwCallback: DWORD;

lpstrReturn: PWideChar;

dwRetSize: DWORD;

end;

TMCI_Info_Parms = TMCI_Info_ParmsA;

Идентификатор возвращается функцией MCI_INFO_MEDIA_IDENTITY в виде строки с десятичным числом. Для получения дополнительной информации обратитесь к электронной справке (Win32 и компонент TMediaPlayer).

Аппаратное обеспечение

CD-ROM

Открытие и закрытие привода CD-ROM

Есть ли Win32 API функция, позволяющая не только открыть НО И ЗАКРЫТЬ CD-ROM? Хотелось бы не тянуться ручками к РС, а нажать мышкой на кнопку. Компонентом TMediaPlayer пользоваться не хочу, тем более компакт он может только извлечь…

Для закрытия CD-ROM:

mciSendString('Set cdaudio door open wait', nil, 0, handle);

Для открытия CD-ROM:

mciSendString('Set cdaudio door closed wait', nil, 0, handle);

Не забудьте включить MMSystem в список используемых модулей (uses).

Операционная система

Буфер обмена

Просмотр буфера обмена

Пример на основе простого модуля-класса, осуществляющего просмотр буфера обмена.

unit ClipboardViewer;

interface

uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type TForm1 = class(tform)

procedure FormCreate(Sender: TObject);

procedure FormDestroy(Sender: TObject);

private

FNextViewerHandle : THandle;

procedure WMDrawClipboard(var message: TMessage); message WM_DRAWCLIPBOARD;

procedure WMChangeCBCHain(var message: TMessage); message WM_CHANGECBCHAIN;

public

end;

var Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);

begin

// Проверяем работоспособность функции.

// При невозможности просмотра буфера обмена

// функция возвратит значение Nil.

FNextViewerHandle:= SetClipboardViewer(Handle);

end;

procedure TForm1.FormDestroy(Sender: TObject);

begin

// Восстанавливаем цепочки.

ChangeClipboardChain(Handle, FNextViewerHandle);

end;

procedure TForm1.WMDrawClipboard(var message: TMessage);

begin

// Вызывается при любом изменении содержимого буфера обмена

message.Result := SendMessage(WM_DRAWCLIPBOARD, FNextViewerHandle, 0, 0);

end;

procedure TForm1.WMChangeCBCHain(var message: TMessage);

begin

// Вызывается при любом изменении цепочек буфера обмена.

if message.wParam = FNextViewerHandle then begin

// Удаляем следующую цепочку просмотра. Корректируем внутреннюю переменную.

FNextViewerHandle:= message.lParam;

// Возвращаем 0 чтобы указать, что сообщение было обработано

message.Result:= 0;

end else begin

// Передаем сообщение следующему окну в цепочке.

message.Result:= SendMessage(FNextViewerHandle, WM_CHANGECBCHAIN, message.wParam, message.lParam);

end;

end;

end.

Копирование в буфер обмена

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Советы по Delphi. Версия 1.0.6»

Представляем Вашему вниманию похожие книги на «Советы по Delphi. Версия 1.0.6» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Советы по Delphi. Версия 1.0.6»

Обсуждение, отзывы о книге «Советы по Delphi. Версия 1.0.6» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x