Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 165
от 27.06.2005, 23:40

Администратор:Калашников О.А.
В номере:Вопросов: 5, Ответов: 14


Вопрос № 22495: Здравствуйте уважаемые эксперты. Как можно с базой данных созданную в VFP 8 работать в делфи 7.0. Пытаюсь рабоать через bde, но делфи никак ее открыть не может. Может нужны какие то дополнительные компоненты, если можно то поподробнее. <...
Вопрос № 22500: Где найти компоненту под Дельфи-7 для работы с PGP?...
Вопрос № 22504: Добрый день эксперты! Как в 98-й винде программно поменять тему рабочего стола? Имеется в виду не волпапер (об этом ужи писалось не раз), а включить, например, тему "Стандартная Windows" или "Моя любимая тема". Пользую...
Вопрос № 22506: 1. Как опросить систему и получить список устройств установленых в системе, опросить надо не Windows а напрямую как это делает сама Windows. 2. Как определить? имеющийся в наличии драйвер подойдёт к данному устройству. 3. Полный кайф если рас...
Вопрос № 22524: Здравствуйте! Может, кто сталкивался с необходимостью создания вращающегося (круглого) регулятора громкости? Волнует больше не проблема установки самой громкости, а реализация механизма вращения, скажем, Image (через Image.left и Image.top) вокру...

Вопрос № 22.495
Здравствуйте уважаемые эксперты.

Как можно с базой данных созданную в VFP 8 работать в делфи 7.0. Пытаюсь рабоать через bde, но делфи никак ее открыть не может. Может нужны какие то дополнительные компоненты, если можно то поподробнее.

Спасибо заранее всем.
Отправлен: 22.06.2005, 07:43
Вопрос задал: Crick (статус: Посетитель)
Всего ответов отправлено: 3

Отвечает: sir henry
Здравствуйте, Crick!
Нет, никаких дополнительных компонентов при работе с базами VFP8 через BDE не нужно.
Вам необходимо было написать:
- КАК Вы пытаетесь работать (последовательность Ваших действий);
- На какой стадии возникает ошибка (коннект с БД, открытие таблицы, попытка получить набор данных и т.п.);
- И, естественно, текст самой ошибки. Мы же Ваши мысли читать не умеем. :)
Ответ отправил: sir henry (статус: Профессор)
Отправлен: 22.06.2005, 09:03

Отвечает: Jadd
Здравствуйте, Crick!
А формат базы какой? Если dbf, то нужно сделать алиас для работы с базами такого типа и открывать черех БДЕ, хотя можно и без него. Если иной (внутренний какой-то формат), тогда идем в настройки ODBC и цепляем базу через драйвер ODBC. Затем через тот же БДЕ или ADO крутим базу к нашей программе. Все. Пиши, коли чего
---------
Hakuna matata
Ответ отправил: Jadd (статус: Студент)
Отправлен: 22.06.2005, 09:05

Отвечает: Tsechoev Bagaudin
Здравствуйте, Crick!
Через ADO и ODBC драйвер.
Удачи!
---------
Есть только одно зло - невежество, и только одно благо - знания
Ответ отправил: Tsechoev Bagaudin (статус: 3-ий класс)
Отправлен: 22.06.2005, 09:38


Вопрос № 22.500
Где найти компоненту под Дельфи-7 для работы с PGP?
Отправлен: 22.06.2005, 09:21
Вопрос задал: Andrew_V_K (статус: Посетитель)
Всего ответов отправлено: 2

Отвечает: sir henry
Здравствуйте, Andrew_V_K!
Например здесь:
PGP Components for Delphi v.4.1.1
http://www.torry.net/vcl/security/crypting/PGPDC411.zip
Ответ отправил: sir henry (статус: Профессор)
Отправлен: 22.06.2005, 09:43
Оценка за ответ: 5
Комментарий оценки:
коротко и ясно.

Отвечает: Jadd
Здравствуйте, Andrew_V_K!
www.torry.net или в гугле.
---------
Hakuna matata
Ответ отправил: Jadd (статус: Студент)
Отправлен: 22.06.2005, 09:51
Оценка за ответ: 3
Комментарий оценки:
Спасибо, вопрос решен
(5 - точный линк,
4 - линк на сайт,
3 - поисковик
2 - RTFM
1 - упрек в ламерстве)


Вопрос № 22.504
Добрый день эксперты!
Как в 98-й винде программно поменять тему рабочего стола?
Имеется в виду не волпапер (об этом ужи писалось не раз), а включить, например, тему "Стандартная Windows" или "Моя любимая тема".
Пользуюсь Delphi 7.0. Заранее спасибо.
Отправлен: 22.06.2005, 11:05
Вопрос задал: Маренич Владимир (статус: Посетитель)
Всего ответов отправлено: 5

Отвечает: X
Здравствуйте, Маренич Владимир!
Так-же как и обои - в реестре.
У меня, в Win2000, находиться в HKEY_USERSS-1-5-21-220523388-1275210071-725345543-1001Control PanelAppearance параметр current
Если в 98 не так, то её просто найти:regedit->Поиск->Имя темы.
Ответ отправил: X (статус: 7-ой класс)
Отправлен: 22.06.2005, 11:21

Отвечает: Jadd
Здравствуйте, Маренич Владимир!
Да все просто. Открываешь MSDN и ищешь описание UxTheme API. Там довольно много чего можно делать, так что читай и углубляйся.
---------
Hakuna matata
Ответ отправил: Jadd (статус: Студент)
Отправлен: 22.06.2005, 11:33
Оценка за ответ: 2
Комментарий оценки:
А если нет MSDN? БЫСТРЫЙ ответ не всегда ЛУЧШИЙ ответ. Тем более, что uxtheme.dll не содержит команд установки (переключения) текущей темы.

Отвечает: Denisss
Здравствуйте, Маренич Владимир!
Легко: открываете файл <название темы>.theme, а там в текстовом виде расписаны все ключи в реестре: что и куда прописать.
Да, и HKEY_ROOT там для всех ключей - это HKEY_CURRENT_USER
Остается только просмотреть получше этот формат файла и понять что писать в реестр в строковом виде, а что в числовом.
Ответ отправил: Denisss (статус: 7-ой класс)
Отправлен: 22.06.2005, 11:44
Оценка за ответ: 3
Комментарий оценки:
Не очень конструктивный ответ. При желании можно и свою винду написать. Нужно простое решение (скорее всего через WinAPI).

Отвечает: sir henry
Здравствуйте, Маренич Владимир!
В составе Дельфи 7 есть модуль, называется uxtheme.pas, который как раз темами и занимается. :)
Правда я что-то описания его в справке не нашел. :)
Но можно покопаться в самом модуле.
Ответ отправил: sir henry (статус: Профессор)
Отправлен: 22.06.2005, 12:17
Оценка за ответ: 4
Комментарий оценки:
Судя по всему модуль предназначен для получения информации о текущей теме и каким-то образом для упраления приложением на основе этой темы. Но переключения тем там нет. Есть GetCurrentThemeName, но надо аля SetCurrentThemeName :)

Отвечает: Gin
Здравствуйте, Маренич Владимир!
Владимир, но "волпапер" и тема это одно и тоже. Вот (для вариантов) вызов окна диалога:

uses ShellApi;
function GetSystemDir: TFileName;
var
SysDir: array [0..MAX_PATH-1] of char;
begin
SetString(Result, SysDir, GetSystemDirectory(SysDir, MAX_PATH));
if Result = '' then
raise Exception.Create(SysErrorMessage(GetLastError));
end;

procedure TForm1.Button1Click(Sender: TObject);
var
x: Tfilename;
begin
x := getsystemdir;
ShellExecute(Form1.Handle, 'open', Pchar('rundll32.exe'),
'shell32.dll,Control_RunDLL Desk.cpl,@0,5', Pchar(X), SW_normal);
end;

С Уважением, Gin.
Ответ отправил: Gin (статус: 8-ой класс)
Отправлен: 22.06.2005, 13:00
Оценка за ответ: 2
Комментарий оценки:
Спасибо за код, но нужно ПЕРЕКЛЮЧЕНИЕ готовых тем (цвета окон, системные шрифты и т.д.) прогрммно. Т.е. без участия пользователя.


Вопрос № 22.506
1. Как опросить систему и получить список устройств установленых в системе, опросить надо не Windows а напрямую как это делает сама Windows.
2. Как определить? имеющийся в наличии драйвер подойдёт к данному устройству.
3. Полный кайф если раскажите как его установить в систему.
Отправлен: 22.06.2005, 11:40
Вопрос задал: Владислав (статус: Студент)
Всего ответов отправлено: 1

Отвечает: Jadd
Здравствуйте, Владислав!
В пользовательском режиме винда не даст тебе обращаться напрямую к устройствам. Так что копай в сторону Native API и программинга на нулевом кольце.
---------
Hakuna matata
Ответ отправил: Jadd (статус: Студент)
Отправлен: 22.06.2005, 12:01


Вопрос № 22.524
Здравствуйте!
Может, кто сталкивался с необходимостью создания вращающегося (круглого) регулятора громкости? Волнует больше не проблема установки самой громкости, а реализация механизма вращения, скажем, Image (через Image.left и Image.top) вокруг определенной точке на форме...
Пробовал: Image.Left:=X*Sin(A), где Х-радиус, А-угол - не катит!
Помогите, если не затруднит!
Отправлен: 22.06.2005, 18:23
Вопрос задал: Yarick (статус: Посетитель)
Всего ответов отправлено: 3

Отвечает: Denisss
Здравствуйте, Yarick!
Если Вас интересует только "Круглый регулятор громкости", то вот: http://www.torry.net/vcl/misceff/other/ghtknob.zip
Если что там не понравится - можно, конечно же его подправить :)
Ответ отправил: Denisss (статус: 7-ой класс)
Отправлен: 22.06.2005, 19:16

Отвечает: John Freeman
Здравствуйте, Yarick!
Э батенька, да вы извращенец!
Тогда уж надо всю картинку перерисовывать(матрица поворота на каждый пиксел, дальше пошлю в линейную алгебру и школу, ну или средствами GDI)
В 90% таких регуляторов картинка статичная, меняется только метка положения(точка как правило), а уж как сделать точку, движущуюся по окружности...
---------
Жить - начертал на знамени я, жить под солнцем всегда побеждая! Кожа моя - одна броня, из стали броня другая.
Ответ отправил: John Freeman (статус: Профессор)
Отправлен: 22.06.2005, 19:23

Отвечает: sir henry
Здравствуйте, Yarick!
Left - это координата контрола от левого края формы. :)
В приложении приведен пример для вращения изображения выдернутый с сайта delphiworld.

Приложение:

Ответ отправил: sir henry (статус: Профессор)
Отправлен: 23.06.2005, 05:54


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.

Яндекс


Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.delphiplus
Отписаться
Вспомнить пароль

В избранное