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

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


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

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

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

Выпуск № 265
от 15.10.2005, 14:54

Администратор:Калашников О.А.
В рассылке:Подписчиков: 253, Экспертов: 44
В номере:Вопросов: 4, Ответов: 6


Вопрос № 27462: Ответьте мне пожалуйста на такой вопрос: мне необходимо запустить два и более потока, которые сканируют директории на предмет изменения файлов (создание, удаление и.т.п). Список сканируемых директорий будут у меня храниться в листбо...
Вопрос № 27478: ЗДРАСТВУЙТЕ !!!! МНЕ ОЧЕНь ИНТЕРЕСНА КАК МО ЖНА В DELPHI. КОНТРОЛИРОВАТ ЗВУК , НАПРИМЕР КАК В ПЛЕЕРЕ WINAMP ПОВИШАТ И СНИЗИТ ЗВУК ... МНЕ ИНТЕРЕСНА КАК ЭТА ПИШИТЦА В ПРОГРАМЕ.. БУДУ ОЧЕНь БЛОГАДАРЕН ЕСЛИ ВЫ ОТТВЕТИТЕ НА МОИ ВАПРОС ДАРАГИЕ ЭКСпЕРТИ .....
Вопрос № 27498: Помогите! Нужно с сервера(ServerSocket) перекинуть в клиент (ClientSocket) папку с файлами и папками. Подскажите как это реализовать. P.S. Файлы уже научился перекидывать, но вот папки....:(...
Вопрос № 27502: Здравствуйте, эксперты! Вопрос следубщий: подскажите рабочий DBTree с встроенным drag/drop и предназначенный для работы с TOracleDataSet (DOA) или хотя бы TDataSet....

Вопрос № 27.462
Ответьте мне пожалуйста на такой вопрос:
мне необходимо запустить два и более потока, которые сканируют директории
на предмет изменения файлов (создание, удаление и.т.п).
Список сканируемых директорий будут у меня храниться
в листбоксе. Как мне запустить этот поток несколько раз и как
мне остановить определенный поток, если пользователь решил
несканировать какой то католог.

Приложение:

Отправлен: 09.10.2005, 18:15
Вопрос задал: Dadaev Zaur (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: sir henry
Здравствуйте, Dadaev Zaur!
Не совсем понял вопрос, но наверное Вам необходимо запустить несколько экземпляров класса типа THread, которые будут создаваться динамически, в зависимости от того, сколько нужно экземпляров.
По видимому Вам необходимо создать динамический массив экземпляров класса TWFS, количество которых будет определятся по ходу работы программы:
var
arWFS: array of TWFS;
i, j: integer;
Begin
{Например, выяснилось, что нужно пять экземпляров для сканирования папок}
i:=5;
SetLength(arWFS, i-1);
{Создание потоков}
For j:=0 To i-1 Do
arWFS.Create(True);
...
End;
Запуск того или иного потока можно осуществить по его индексу:
arWFS[1].Synchronize(Метод_Где_выполняется_нужный_Вам_код);
Приостановить на время и запустить заново поток можно так:
arWFS[1].Suspend; {Приостановить}
arWFS[1].Resume; {Продолжить}
Остановить поток совсем:
arWFS[1].Terminate;
Запускается он потом заново с помощью Sinchronize();
Ответ отправил: sir henry (статус: Профессор)
Отправлен: 09.10.2005, 18:44
Оценка за ответ: 5
Комментарий оценки:
Спасибо...
С помощью массива проблема решилась...
все работает великолепно... :))


Вопрос № 27.478
ЗДРАСТВУЙТЕ !!!! МНЕ ОЧЕНь ИНТЕРЕСНА КАК МО ЖНА В DELPHI. КОНТРОЛИРОВАТ ЗВУК , НАПРИМЕР КАК В ПЛЕЕРЕ WINAMP ПОВИШАТ И СНИЗИТ ЗВУК ... МНЕ ИНТЕРЕСНА КАК ЭТА ПИШИТЦА В ПРОГРАМЕ.. БУДУ ОЧЕНь БЛОГАДАРЕН ЕСЛИ ВЫ ОТТВЕТИТЕ НА МОИ ВАПРОС ДАРАГИЕ ЭКСпЕРТИ ....
Отправлен: 10.10.2005, 03:20
Вопрос задал: ZURAB PAGODIN (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Samum
Здравствуйте, ZURAB PAGODIN!
Смотрите примеры в приложении, надеюсь это то, что вам надо.

Приложение:

---------
Если бы программистам за их ошибки отрывали части тела, то в конце концов им пришлось бы использовать голову!

Ответ отправил: Samum (статус: Специалист)
Отправлен: 10.10.2005, 07:57

Отвечает: sir henry
Здравствуйте, ZURAB PAGODIN!
Например, можно использовать такие функции из модуля MMSystem:
waveOutSetVolume(OUT, AVolume) ; {Для изменения громкости wave-файлов}
midiOutSetVolume(OUT, AVolume) ; {Для изменения громкости midi-файлов}
OUT - это хэндл устройства, с помощью которого воспроизводится звук.
AVolume - уровень звука, типа DWORD. Здесь старший байт - это правый канал, а младший - левый.
Общий уровень громкости регулируется так:
AuxSetVolume(OUT, AVolume)
Список устройств можно получить так:
procedure TForm1.FormCreate(Sender: TObject);
var
i: integer;
cap: TAuxCaps;
begin
for i := 0 to auxGetNumDevs - 1 do
begin
auxGetDevCaps(i, Addr(cap), SizeOf(cap));
ListBox1.Items.Add(cap.szPname)
end;
end;
Общий звук будет регулироваться так:
var
LeftVolume, RightVolume: word; {Уровень громкости в левом (правом) канале}
Begin
AuxSetVolume(ListBox1.ItemIndex, LeftVolume shl 16 + RightVolume);
End;
Список Wave и Midi устройств для вывода звука получают с помощью функций:
waveOutGetDevCaps()
midiOutGetDevCaps()
Полностью их синтаксис не привожу - он есть в хелпе.
Ответ отправил: sir henry (статус: Профессор)
Отправлен: 10.10.2005, 08:35

Отвечает: Romodos
Здравствуйте, ZURAB PAGODIN!
Надо использовать миксеры
В приложении пример модуля не поместился - слишком большой - пиши на romodos@yandex.ru - вышлю по е-майл, там можно понять
---------
FAQ me off!
Ответ отправил: Romodos (статус: 10-ый класс)
Отправлен: 10.10.2005, 20:56


Вопрос № 27.498
Помогите! Нужно с сервера(ServerSocket) перекинуть в клиент (ClientSocket) папку с файлами и папками. Подскажите как это реализовать.
P.S. Файлы уже научился перекидывать, но вот папки....:(
Отправлен: 10.10.2005, 11:03
Вопрос задал: Сергей Борисович (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Werewolf
Здравствуйте, Сергей Борисович!
Как вариант передавайте дерево подпапок и создавайте их с помощью CreateDir(directoryname) затем передавайте в созданные папки файлы.
Ответ отправил: Werewolf (статус: 10-ый класс)
Отправлен: 11.10.2005, 00:38
Оценка за ответ: 5
Комментарий оценки:
Точно! :)
А это идея....спасибо


Вопрос № 27.502
Здравствуйте, эксперты!
Вопрос следубщий: подскажите рабочий DBTree с встроенным drag/drop и предназначенный для работы с TOracleDataSet (DOA) или хотя бы TDataSet.
Отправлен: 10.10.2005, 13:12
Вопрос задал: Lector (статус: 5-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Werewolf
Здравствуйте, Lector!
По поводу DbTree смотрите на http://www.torry.ru/pages.php?id=536 что-нибудь из старенького и бесплатного должно подойти.
P.S.: так же Вам может пригодится
http://www.farpost.com/personal/dmitryb/oraclecutils_di.htm
Ответ отправил: Werewolf (статус: 10-ый класс)
Отправлен: 11.10.2005, 01:05
Оценка за ответ: 4
Комментарий оценки:
На torry все компоненты с реалиованным drug и drop платные.
А о существовании компонента из PS я не знал.


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

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

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

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

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


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


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

Rambler's Top100 Яндекс


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

В избранное