Привет, Гость ( Вход | Регистрация )


Reply to this topicStart new topicStart Poll
mik
post Среда, 04 Июля 2001, 0:06
Сообщение #21


Завсегдатай
****

Группа: Мемберы
Сообщений: 841
Регистрация: 24 Ноя '06



2 Юзер   Цитировать


anton, держи работающий код. Сам писал, так что проверено - мин нет.
В Builder'е для отлова одиночных messag'ей лучше всего использовать макро BEGIN_MESSAGE_MAP - END_MESSAGE_MAP

code:

1) Create new application in Builder
2) Place TMemo component on the form Form1
3) Copy message handler declaration and implementation from the code below
*
*
************************* Unit1.h *******************************
*
*
//---------------------------------------------------------------------------

#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
TMemo *Memo1;
private: // User declarations
void __fastcall WMDeviceChange(TMessage &Msg); // this is declaration for WM_DEVICECHANGE message handler
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(WM_DEVICECHANGE, TMessage, WMDeviceChange)
END_MESSAGE_MAP(TForm)
public: // User declarations
__fastcall TForm1(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
********************** End of Unit1.h ***************************
*
*================================================================
*
*
*
************************ Unit1.cpp ******************************
*
*
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
#include <dbt.h> // <<<<-------- DO NOT FORGET TO INCLUDE THIS!!!!!!!!
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
//
// This function is executed every time when WM_DEVICECHANGE message arrives from Windows
//
void __fastcall TForm1::WMDeviceChange(TMessage &Msg)
{
PDEV_BROADCAST_HDR pdbch; // structure that contains information about the device affected by a WM_DEVICECHANGE
PDEV_BROADCAST_VOLUME pdbcv; // structure that contains information about a logical volume

switch (Msg.WParam)
{
case DBT_DEVICEARRIVAL: // system detected a new device
pdbch = (PDEV_BROADCAST_HDR)(Msg.LParam);
if (pdbch->dbch_devicetype == DBT_DEVTYP_VOLUME)
{
pdbcv = (PDEV_BROADCAST_VOLUME) pdbch;
if (pdbcv->dbcv_flags == DBTF_MEDIA)
{
// pdbcv->dbcv_unitmask identifies which logical drive
// Each bit in the mask corresponds to one logical drive.
// Bit 0 represents drive A, bit 1 drive B, and so on
// On my system CD-ROM is drive F: so I will check this
if (pdbcv->dbcv_unitmask & 0x20) // drive F:
Memo1->Lines->Add("Disk was inserted in drive F:");
}
}
break;
case DBT_DEVICEREMOVECOMPLETE: // device is gone
pdbch = (PDEV_BROADCAST_HDR)(Msg.LParam);
if (pdbch->dbch_devicetype == DBT_DEVTYP_VOLUME)
{
pdbcv = (PDEV_BROADCAST_VOLUME) pdbch;
if (pdbcv->dbcv_flags == DBTF_MEDIA && pdbcv->dbcv_unitmask & 0x20) // drive F:
Memo1->Lines->Add("Disk was removed from drive F:");
}
break;
default:
break;
}
}
//---------------------------------------------------------------------------
********************* End of Unit1.cpp **************************


User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Dangeros
post Среда, 04 Июля 2001, 0:17
Сообщение #22


Начинающий кинолюбитель
**

Группа: Мемберы
Сообщений: 189
Регистрация: 10 Мая '01
Откуда: Latvia



2 Юзер   Цитировать


2anton-mozet bitj ja osibajus nu slucaino nasel takuju progu:Autoplay Menu Studio v3.0.0.2-sudja po opisaniju ona pozvolaet cerz GNU delatj to cto trebuetsa.
Nasel v http://kickme.to/freegamez4all
Pramoi link na skacivanije:http://members.tripod.lycos.co.kr/sx60nthzgr/ams3002.zip
Izvinite esli eto ne to!
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Earl Aries
post Среда, 04 Июля 2001, 17:11
Сообщение #23


Unregistered








2 Юзер   Цитировать


quote:
Originally posted by Dangeros:

2anton-mozet bitj ja osibajus nu slucaino nasel takuju progu:Autoplay Menu Studio v3.0.0.2-sudja po opisaniju ona pozvolaet cerz GNU delatj to cto trebuetsa.
Nasel v http://kickme.to/freegamez4all
Pramoi link na skacivanije:http://members.tripod.lycos.co.kr/sx60nthzgr/ams3002.zip
Izvinite esli eto ne to!


ошибаешься

Go to the top of the page
+Quote Post
anton
post Среда, 04 Июля 2001, 19:08
Сообщение #24


Гигант Номер Раз
********

Группа: Ветеран Team RDA
Сообщений: 4349
Регистрация: 18 Янв '01
Откуда: Америка, Россия



2 Юзер   Цитировать


Dangeros : spasibo, no mne kazhetsya ti oshibaeshsya, eta shtuka sozdaet te autorun menu dlya samogo cd
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
b-x
post Четверг, 05 Июля 2001, 0:08
Сообщение #25


Видеоман
*****

Группа: Мемберы
Сообщений: 1961
Регистрация: 27 Мар '01
Откуда: USA



2 Юзер   Цитировать


Anton,

а вот глянь-ка еще сюда:
http://www.bitrix.ru/logmon/

и сюда:
http://insomniasoft.hypermart.net/ASYNCRON.HTML

Может это те программки, которые тебе нужны.

Есть еще одна программка (к сожалению, не помню ее страничку):

AutoCDrive - драйвер для подмены функции Windows, автоматически запускающей
программу при вставке CD-ROM в устройство чтения дисков:

1. После установки AutoCDrive Windows не запускает автоматически программу,
предусмотренную производителем диска CD-ROM.
2. При первом использовании CD-ROM выводится окно открытия файла, в котором
следует указать программу (или иной документ), который будет впоследствии
запускаться при вставке этого CD-ROM в устройство. Так же в следующем окне
можно указать необходимые параметры командной строки для запуска, или просто
закрыть окно без указания параметров.
3. После выполнения этих действий, CD-ROM "прописывается" в реестре Windows и
при дальнейшем использовании будет узнан AutoCDrive и запустится программа или
откроется документ, соответствующий серийному номеру вставленного CD-ROM.
4. AutoCDrive запускается автоматически при загрузке операционной системы и
отслеживает встаку и изъятие дисков в устройстве. В это время на панели задач
отображается значок, нажав на который можно вызвать меню, в котором выбрать
нужное действие, а именно:
а) запустить программу (документ) при вставленном диске;
б) изменить параметры автозапуска (вновь "прописать" CD-ROM);
в) отключить AutoCDrive на время или
г) закрыть программу до следующего запуска системы.

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
anton
post Четверг, 05 Июля 2001, 0:02
Сообщение #26


Гигант Номер Раз
********

Группа: Ветеран Team RDA
Сообщений: 4349
Регистрация: 18 Янв '01
Откуда: Америка, Россия



2 Юзер   Цитировать


b-x: spasibo za linki ... AutoCDDrive ne to chto nado , t.k. on dlya kazhdogo cd propisivaet, a ne dlya gruppi CD ...

Log Monitor poleznaya shtuka no ne dumau chto v etom ee mozhno ochen' chorosho primenit' ...

a vot asyncron mi posmotrim , spasibo

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
mik
post Четверг, 05 Июля 2001, 0:45
Сообщение #27


Завсегдатай
****

Группа: Мемберы
Сообщений: 841
Регистрация: 24 Ноя '06



2 Юзер   Цитировать


anton, а что, мой вариант у тебя не пошёл?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
anton
post Четверг, 05 Июля 2001, 14:37
Сообщение #28


Гигант Номер Раз
********

Группа: Ветеран Team RDA
Сообщений: 4349
Регистрация: 18 Янв '01
Откуда: Америка, Россия



2 Юзер   Цитировать


уммм ... что то я его пропустил , сегодня посмотрю , спасибо.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
anton
post Четверг, 05 Июля 2001, 18:28
Сообщение #29


Гигант Номер Раз
********

Группа: Ветеран Team RDA
Сообщений: 4349
Регистрация: 18 Янв '01
Откуда: Америка, Россия



2 Юзер   Цитировать


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

VCD : если директория MPEGAV присутсвует в корне ...


MP3: если *.m3u есть в корне или же в первой директории одни mp3

Divx: если на диске один avi file ... если больше чем один , то даем userу выбор ...

DVD: ну точную структуру не помню, но вроде если есть *.vob ...

вроде все

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
b-x
post Пятница, 06 Июля 2001, 0:14
Сообщение #30


Видеоман
*****

Группа: Мемберы
Сообщений: 1961
Регистрация: 27 Мар '01
Откуда: USA



2 Юзер   Цитировать


anton,

Если (точнее, когда) у тебя получится - поделись результатом, пожалуйста!

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
anton
post Пятница, 06 Июля 2001, 0:03
Сообщение #31


Гигант Номер Раз
********

Группа: Ветеран Team RDA
Сообщений: 4349
Регистрация: 18 Янв '01
Откуда: Америка, Россия



2 Юзер   Цитировать


b-x: вот , держи , только имей ввиду : никакого интерфайса и писал новичек
www.antonr.com/cd/cd-autorun.zip
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
b-x
post Суббота, 07 Июля 2001, 0:42
Сообщение #32


Видеоман
*****

Группа: Мемберы
Сообщений: 1961
Регистрация: 27 Мар '01
Откуда: USA



2 Юзер   Цитировать


anton, спасибо, но это, похоже, не для меня - каких-то библиотек твоя программа требует, работать не хочет. Может, это у меня руки кривые, да и времени не было разбираться, но как-то сложно это все. Я уж лучше пока по старинке, мышой потыкаю...
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
anton
post Суббота, 07 Июля 2001, 0:52
Сообщение #33


Гигант Номер Раз
********

Группа: Ветеран Team RDA
Сообщений: 4349
Регистрация: 18 Янв '01
Откуда: Америка, Россия



2 Юзер   Цитировать


a ... tebe celuu programmku nuzhno , rabotaushuu ?

seichas sdelaem ... ya ee eshe dorabotal , vrode vse ok rabotaet teper'

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
anton
post Суббота, 07 Июля 2001, 0:53
Сообщение #34


Гигант Номер Раз
********

Группа: Ветеран Team RDA
Сообщений: 4349
Регистрация: 18 Янв '01
Откуда: Америка, Россия



2 Юзер   Цитировать


vse, zakachal , na tot zhe address : )


1. znachit tak , ona v tray'e ne sidit, pryachetsya srazu zhe, mozhno vikluchit' cherez ctrl-alt-del "cd-autorun"

2. programma bila sdelanna iskluchitel'no dlya menya, poetomu nikakich navorotov ... esli chto , mogu chto podpravit' personal'no ...

3. v "players.cfg" , stoyat nazvaniya diskov, ich menyat' nel'zya, divx2 znachit na odnom diske neskol'ko AVI ...

4. mozhno vse ostal'noe ispravlyat: kakoi vopros sprashivaetsya i kakuu programmu zapuskat' ...

5. esli dobavish parametr %1 k koncu zapuskaemogo file'a , to tuda pri zapuske dobavitsya bukva cd-rom'a (tipa "d:\").

6. ne zabivaiti vikluchat' programmu pered redaktirovaniem players.cfg ...


nu vrode kak i vse, eshe raz povtoryau , delal dlya sebya, tak chto immeite vvidu

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Earl Aries
post Воскресенье, 08 Июля 2001, 0:38
Сообщение #35


Unregistered








2 Юзер   Цитировать


для себя тоже надо стараться
Go to the top of the page
+Quote Post
b-x
post Суббота, 07 Июля 2001, 19:19
Сообщение #36


Видеоман
*****

Группа: Мемберы
Сообщений: 1961
Регистрация: 27 Мар '01
Откуда: USA



2 Юзер   Цитировать


anton, спасибо, попробую!
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Kostya
post Вторник, 10 Июля 2001, 13:42
Сообщение #37


Опытный кинолюбитель
***

Группа: Мемберы
Сообщений: 340
Регистрация: 13 Мая '01
Откуда: Yoqneam, Israel



2 Юзер   Цитировать


A если по простому? http://www.geocities.com/ainsht/VCD_PLAY.zip

[This message has been edited by Kostya (edited 10 July 2001).]

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
b-x
post Вторник, 10 Июля 2001, 21:24
Сообщение #38


Видеоман
*****

Группа: Мемберы
Сообщений: 1961
Регистрация: 27 Мар '01
Откуда: USA



2 Юзер   Цитировать


Kostya, а "по-простому" оно ж DIVX не играет, поди? Приду домой - проверю...

[This message has been edited by b-x (edited 10 July 2001).]

[This message has been edited by b-x (edited 10 July 2001).]

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Kostya
post Четверг, 12 Июля 2001, 0:22
Сообщение #39


Опытный кинолюбитель
***

Группа: Мемберы
Сообщений: 340
Регистрация: 13 Мая '01
Откуда: Yoqneam, Israel



2 Юзер   Цитировать


Не, не играет. Он только VCD (MPEG2) умеет.

[This message has been edited by Kostya (edited 11 July 2001).]

User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Reply to this topicTopic OptionsStart new topic
1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
здесь находятся:
 

Lo-Fi Версия CMSBlog Сейчас: Среда, 18 Июня 2025, 19:27