![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Ner-zul |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 24.1.2004 Где: Москва Репутация: нет Всего: нет |
Добрый день, У меня есть клиентское приложение, которое работает с базами данных под управлением IB7.0. В процессе работы у меня формируется перечень ссылок на файлы, он обрабатывается определенным образом. После окончания обрабокти все файлы, с сылками которых, я работал группируются в одну папочку на локальном диске. Далее я запускал NeroBorning и записывал эту папку с файлами на CD-носитель. Я хочу чтобы запись на носитель осуществлялась в рамках моего приложения. Какими средствами мне лучше реализовать этот механизм? Я слышал есть вариант использовать COM-объекты, а есть вариант использовать API-функции, как самого виндовса так и пишушщих программ, в т.ч. и Nero. Но второй вариант ограничивает переносимость на другие машины, так как там должна быть установлена соответствующая программа, чтобы использовать соответсвующие функуции. Если я прав, тогда выбор стоит остановить на COM-объектах, Так? Тогда какие конкретно COM-объекы мне надо использовать и каким образом? Буду благодарен если вы мне скините примерчик или дадите на него ссылку, а также на литературу конкретно отвечающую на мой вопрос. --------------------
Ner-zul |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 15 Всего: 98 |
у неро есть набор API. оно есть и у окон -- IMAPI. а что использовать... -- что удобнее, то и используй.
статьи/примеры поищи на форуме -- вопрос не раз поднимался... -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
||||
|
||||
| Ner-zul |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 24.1.2004 Где: Москва Репутация: нет Всего: нет |
ммм, слегка конкретизирую вопрос!
Мне необходиом почитать и посмотреть примеры использования COM в Delphi. Желательно на тематику моей задачи. --------------------
Ner-zul |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Ну так в чём проблема?
Вот компонент: http://www.torry.net/vcl/filedrv/cd/CDBurner.zip Там всего один pas файл. Открывай смотри - это готовый действующий пример работы с интерфейсом службы записи компакт-дисков. Дока ICDBurn в MSDN: http://msdn2.microsoft.com/en-us/library/ms646705.aspx |
|||
|
||||
| Ner-zul |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 24.1.2004 Где: Москва Репутация: нет Всего: нет |
спасиб
--------------------
Ner-zul |
|||
|
||||
| Ner-zul |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 24.1.2004 Где: Москва Репутация: нет Всего: нет |
Еще вопос..) Вот, сижу , все читаю, все разбираю, все понимаю, но: Я скачал паскалевский файл с описанием класса TCDBurner. Вроде бы даже установил его как компонент в свой Дельфи. Далее я открыл хелп файл, лежавший с ним и там нашел что то типа примера, по использованию этого класса:
Ошибка показана в коде примера стрелочкой=) Я чето туплю уже час и не понимаю чего ей не хватает.... Я пробовал и просто подцеплять файл с описанием класса к проекту ...но всё не то. Такую ошибку обычно выдаёт, если собственно ручно прописать в коде например определенние Buttona , а на форме его не поставить. Но что здесь то ставить... и куда? Это сообщение отредактировал(а) Ner-zul - 24.1.2007, 18:23 --------------------
Ner-zul |
|||
|
||||
| Coder |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 733 Регистрация: 13.12.2004 Репутация: 5 Всего: 11 |
пропиши отдельно, а не в классе формы.
|
|||
|
||||
| Ner-zul |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 24.1.2004 Где: Москва Репутация: нет Всего: нет |
Спасибо, эта проблема решена! --------------------
Ner-zul |
|||
|
||||
| umen |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 11.11.2006 Репутация: нет Всего: нет |
Можно и в классе формы, просто надо на форму бросить компонент CDBurner
|
|||
|
||||
| Ner-zul |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 24.1.2004 Где: Москва Репутация: нет Всего: нет |
Товарищи, объсните пожалуйста что сей код значит:
1) Вот такой еще вопрос: Раз это конструктор, нуноли мне его вызывать в теле программы при использовании/создании объекта данного класса??? Автор в своем примере не использует его....Правда он в этом примере еще пару описок сделал.. то есть видно, что сам он его не тестировал. 2) Меня здесь интересует свойство fBurnArea класса TCDBurner. Как я понял это адрес того места где будет лежать буферные данные записываемые на CD. Динамически это свойство переопределить вроде как нельзя, так как оно только для чтения. У меня на строчке использующей это property вылетает ошибка ... типа Access Violation чтоли... вот. Объясните плиз как и откуда в него что заполняется.. и откуда появляются проблемы. Если что непонятно в моём вопросе, я уточню.) P.S. Snowy, Вы уверены, что это рабочий пример??? http://www.torry.net/vcl/filedrv/cd/CDBurner.zip Это сообщение отредактировал(а) Ner-zul - 25.1.2007, 13:51 --------------------
Ner-zul |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Да. Так и есть. Переопределить его нельзя. Эта настройка не может задаваться - она берётся из настроек системы. При очень большом желании можно и переназначить в реестре. Но для этого нужны админские права. И делать это крайне не рекомендовано. |
|||
|
||||
| Ner-zul |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 24.1.2004 Где: Москва Репутация: нет Всего: нет |
Хорошо, тогда у меня рождаются следующие вопросы:
1) Насколькоя я понимаю из объяснений автора, его пример вызовет мастер виндусовый по записи CD-дисков, а параметры задаю я и вызов этот тоже инициализирую я. Тогда я понимаю, что мне и не надо пытаться изменить дирректорию для буфферизованных данных, иначе мастер не сможет нормально все записать на диск, так? Если так, то что же мне делать??? Если его собственный пример выдает ошибки!!! ??? 2)Может быть я както не правильно встроил его pas-овский файл в свой Delphi??? 3)Он еще что-то говрит про то, что Мне обязательно надо работать с формой: "constructor Create(AOwner: TComponent); - Pass a TForm in as the owner. If you need a non-visual version, register, and we'll talk." И реально в описании конструктора, которое я привел есть строка:
А я как мне посоветовали, перенес объявление объекта TCDBurner за пределы формы:
Вот, может быть здесь Что не так???? Или это не то? 4)Вот такой еще вопрос: Раз это конструктор, нуноли мне его вызывать в теле программы при использовании/создании объекта данного класса??? Автор в своем примере не использует его....Правда он в этом примере еще пару описок сделал.. то есть видно, что сам он его не тестировал.(это к предыдущему моему большому посту.) --------------------
Ner-zul |
||||
|
|||||
| Ner-zul |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 24.1.2004 Где: Москва Репутация: нет Всего: нет |
И еще вопрос :
5) Я скачал 3 файла: Cdburner.pas - описание класса. Его я и встроил как компонент в Дельфи. Cdburner.html - хэлп маленький с описанием части свойств класса и примером автора по его использованию, который впринципе отказывается работать!!! Cdburner.dcr - вот что это за файл и че с ним делать я не понял... Может я чего упустил???????? --------------------
Ner-zul |
|||
|
||||
| Snowy |
|
||||||||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Так будет больше заморочек.
Если нет, то нужно вызывать вручную и в качестве параметра передавать форму. Добавлено @ 14:45
Это иконка для панели компонент. |
||||||||||||
|
|||||||||||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |