Помощь - Поиск - Пользователи - Календарь
Полная версия: Prof Red Dvb-s2 7300 (cx2388x)
ПерехватЪ > Программа "ПерехватЪ" > Плагины
o_nix
Prof Red dvb-s2 7300
Хороший популярный спутниковый тюнер.... нехватает только плугина под перехватъ
Есть подробный SDK от производителя http://www.prof-tuners.com/download/sdk/pr...dk_relize_1.rar

Ниодна прога с cx2388x неработает везде делают под конкреного производителя такчто SDK наверно пригодится...

Автору Перехвата огромное спасибо ... долго юзал прогу на своём бехолдере... пока на dvb-s не перешёл теперь жутко мучаюсь...
надеюсь на помощь

дамп тестовой утилиты
Код
CX2388x Card [0]:

Vendor ID:           0x14f1
Device ID:           0x8800
Subsystem ID:        0x3033b033

================================================================================
=

CX2388x Card - Register Dump:
AUD_INIT:                        00000001   (00000000 00000000 00000000 00000001)                
AUD_INIT_LD:                     00000001   (00000000 00000000 00000000 00000001)                
AUD_SOFT_RESET:                  00000000   (00000000 00000000 00000000 00000000)                
AUD_I2SINPUTCNTL:                00000004   (00000000 00000000 00000000 00000100)                
AUD_BAUDRATE:                    00000000   (00000000 00000000 00000000 00000000)                
AUD_I2SOUTPUTCNTL:               00000000   (00000000 00000000 00000000 00000000)                
AAGC_HYST:                       0000001a   (00000000 00000000 00000000 00011010)                
AAGC_GAIN:                       00000000   (00000000 00000000 00000000 00000000)                
AAGC_DEF:                        00000000   (00000000 00000000 00000000 00000000)                
AUD_IIR1_0_SEL:                  00000000   (00000000 00000000 00000000 00000000)                
AUD_IIR1_0_SHIFT:                00000000   (00000000 00000000 00000000 00000000)                
AUD_IIR1_1_SEL:                  00000002   (00000000 00000000 00000000 00000010)                
AUD_IIR1_1_SHIFT:                00000007   (00000000 00000000 00000000 00000111)                
AUD_IIR1_2_SEL:                  00000001   (00000000 00000000 00000000 00000001)                
AUD_IIR1_2_SHIFT:                00000000   (00000000 00000000 00000000 00000000)                
AUD_IIR1_3_SEL:                  00000004   (00000000 00000000 00000000 00000100)                
AUD_IIR1_3_SHIFT:                00000007   (00000000 00000000 00000000 00000111)                
AUD_IIR1_4_SEL:                  00000021   (00000000 00000000 00000000 00100001)                
AUD_IIR1_4_SHIFT:                00000000   (00000000 00000000 00000000 00000000)                
AUD_IIR1_5_SEL:                  00000007   (00000000 00000000 00000000 00000111)                
AUD_IIR1_5_SHIFT:                00000007   (00000000 00000000 00000000 00000111)                
AUD_IIR2_0_SEL:                  00000009   (00000000 00000000 00000000 00001001)                
AUD_IIR2_0_SHIFT:                00000000   (00000000 00000000 00000000 00000000)                
AUD_IIR2_1_SEL:                  0000001c   (00000000 00000000 00000000 00011100)                
AUD_IIR2_1_SHIFT:                00000000   (00000000 00000000 00000000 00000000)                
AUD_IIR2_2_SEL:                  00000020   (00000000 00000000 00000000 00100000)                
AUD_IIR2_2_SHIFT:                00000000   (00000000 00000000 00000000 00000000)                
AUD_IIR2_3_SEL:                  0000001f   (00000000 00000000 00000000 00011111)                
AUD_IIR2_3_SHIFT:                00000000   (00000000 00000000 00000000 00000000)                
AUD_IIR3_0_SEL:                  00000016   (00000000 00000000 00000000 00010110)                
AUD_IIR3_0_SHIFT:                00000000   (00000000 00000000 00000000 00000000)                
AUD_IIR3_1_SEL:                  00000018   (00000000 00000000 00000000 00011000)                
AUD_IIR3_1_SHIFT:                00000000   (00000000 00000000 00000000 00000000)                
AUD_IIR3_2_SEL:                  00000018   (00000000 00000000 00000000 00011000)                
AUD_IIR3_2_SHIFT:                00000000   (00000000 00000000 00000000 00000000)                
AUD_IIR4_0_SEL:                  0000000b   (00000000 00000000 00000000 00001011)                
AUD_IIR4_0_SHIFT:                00000006   (00000000 00000000 00000000 00000110)                
AUD_IIR4_1_SEL:                  0000000d   (00000000 00000000 00000000 00001101)                
AUD_IIR4_1_SHIFT:                00000006   (00000000 00000000 00000000 00000110)                
AUD_IIR4_2_SEL:                  0000000b   (00000000 00000000 00000000 00001011)                
AUD_IIR4_2_SHIFT:                00000006   (00000000 00000000 00000000 00000110)                
AUD_IIR4_0_CA0:                  00006349   (00000000 00000000 01100011 01001001)                
AUD_IIR4_0_CA1:                  00006f27   (00000000 00000000 01101111 00100111)                
AUD_IIR4_0_CA2:                  0000e7a3   (00000000 00000000 11100111 10100011)                
AUD_IIR4_0_CB0:                  00005653   (00000000 00000000 01010110 01010011)                
AUD_IIR4_0_CB1:                  0000cf97   (00000000 00000000 11001111 10010111)                
AUD_IIR4_1_CA0:                  00006349   (00000000 00000000 01100011 01001001)                
AUD_IIR4_1_CA1:                  00006f27   (00000000 00000000 01101111 00100111)                
AUD_IIR4_1_CA2:                  0000e7a3   (00000000 00000000 11100111 10100011)                
AUD_IIR4_1_CB0:                  00005653   (00000000 00000000 01010110 01010011)                
AUD_IIR4_1_CB1:                  0000cf97   (00000000 00000000 11001111 10010111)                
AUD_IIR4_2_CA0:                  00007834   (00000000 00000000 01111000 00110100)                
AUD_IIR4_2_CA1:                  00007b3d   (00000000 00000000 01111011 00111101)                
AUD_IIR4_2_CA2:                  0000fabd   (00000000 00000000 11111010 10111101)                
AUD_IIR4_2_CB0:                  000073ba   (00000000 00000000 01110011 10111010)                
AUD_IIR4_2_CB1:                  0000f340   (00000000 00000000 11110011 01000000)                
AUD_HP_MD_IIR4_1:                00000000   (00000000 00000000 00000000 00000000)                
AUD_HP_PROG_IIR4_1:              00000000   (00000000 00000000 00000000 00000000)                
AUD_FM_MODE_ENABLE:              00000000   (00000000 00000000 00000000 00000000)                
AUD_POLY0_DDS_CONSTANT:          0012010c   (00000000 00010010 00000001 00001100)                
AUD_DN0_FREQ:                    0000286c   (00000000 00000000 00101000 01101100)                
AUD_DN1_FREQ:                    00004000   (00000000 00000000 01000000 00000000)                
AUD_DN1_FREQ_SHIFT:              00000000   (00000000 00000000 00000000 00000000)                
AUD_DN1_AFC:                     00000000   (00000000 00000000 00000000 00000000)                
AUD_DN1_SRC_SEL:                 00000009   (00000000 00000000 00000000 00001001)                
AUD_DN1_SHFT:                    00000000   (00000000 00000000 00000000 00000000)                
AUD_DN2_FREQ:                    00003000   (00000000 00000000 00110000 00000000)                
AUD_DN2_FREQ_SHIFT:              00000000   (00000000 00000000 00000000 00000000)                
AUD_DN2_AFC:                     00000002   (00000000 00000000 00000000 00000010)                
AUD_DN2_SRC_SEL:                 00000008   (00000000 00000000 00000000 00001000)                
AUD_DN2_SHFT:                    00000000   (00000000 00000000 00000000 00000000)                
AUD_CRDC0_SRC_SEL:               000000c5   (00000000 00000000 00000000 11000101)                
AUD_CRDC0_SHIFT:                 00000000   (00000000 00000000 00000000 00000000)                
AUD_CORDIC_SHIFT_0:              00000006   (00000000 00000000 00000000 00000110)                
AUD_CRDC1_SRC_SEL:               000003ce   (00000000 00000000 00000011 11001110)                
AUD_CRDC1_SHIFT:                 00000000   (00000000 00000000 00000000 00000000)                
AUD_CORDIC_SHIFT_1:              00000007   (00000000 00000000 00000000 00000111)                
AUD_DCOC_0_SRC:                  0000001a   (00000000 00000000 00000000 00011010)                
AUD_DCOC0_SHIFT:                 00000000   (00000000 00000000 00000000 00000000)                
AUD_DCOC_0_SHIFT_IN0:            00000008   (00000000 00000000 00000000 00001000)                
AUD_DCOC_0_SHIFT_IN1:            00000006   (00000000 00000000 00000000 00000110)                
AUD_DCOC_1_SRC:                  0000001b   (00000000 00000000 00000000 00011011)                
AUD_DCOC1_SHIFT:                 00000000   (00000000 00000000 00000000 00000000)                
AUD_DCOC_1_SHIFT_IN0:            00000008   (00000000 00000000 00000000 00001000)                
AUD_DCOC_1_SHIFT_IN1:            00000006   (00000000 00000000 00000000 00000110)                
AUD_DCOC_2_SRC:                  0000001b   (00000000 00000000 00000000 00011011)                
AUD_DCOC2_SHIFT:                 00000000   (00000000 00000000 00000000 00000000)                
AUD_DCOC_2_SHIFT_IN0:            00000006   (00000000 00000000 00000000 00000110)                
AUD_DCOC_2_SHIFT_IN1:            00000008   (00000000 00000000 00000000 00001000)                
AUD_DCOC_PASS_IN:                00000003   (00000000 00000000 00000000 00000011)                
AUD_PDET_SRC:                    00000019   (00000000 00000000 00000000 00011001)                
AUD_PDET_SHIFT:                  00000002   (00000000 00000000 00000000 00000010)                
AUD_PILOT_BQD_1_K0:              00001525   (00000000 00000000 00010101 00100101)                
AUD_PILOT_BQD_1_K1:              007f8d4f   (00000000 01111111 10001101 01001111)                
AUD_PILOT_BQD_1_K2:              ff80dd2f   (11111111 10000000 11011101 00101111)                
AUD_PILOT_BQD_1_K3:              ffc071de   (11111111 11000000 01110001 11011110)                
AUD_PILOT_BQD_1_K4:              00400000   (00000000 01000000 00000000 00000000)                
AUD_PILOT_BQD_2_K0:              0000a3d7   (00000000 00000000 10100011 11010111)                
AUD_PILOT_BQD_2_K1:              003f8dcd   (00000000 00111111 10001101 11001101)                
AUD_PILOT_BQD_2_K2:              00400000   (00000000 01000000 00000000 00000000)                
AUD_PILOT_BQD_2_K3:              00000000   (00000000 00000000 00000000 00000000)                
AUD_PILOT_BQD_2_K4:              00000000   (00000000 00000000 00000000 00000000)                
AUD_THR_FR:                      00000001   (00000000 00000000 00000000 00000001)                
AUD_X_PROG:                      00000008   (00000000 00000000 00000000 00001000)                
AUD_Y_PROG:                      02000000   (00000010 00000000 00000000 00000000)                
AUD_HARMONIC_MULT:               00000002   (00000000 00000000 00000000 00000010)                
AUD_C1_UP_THR:                   00001111   (00000000 00000000 00010001 00010001)                
AUD_C1_LO_THR:                   00000f0f   (00000000 00000000 00001111 00001111)                
AUD_C2_UP_THR:                   00000000   (00000000 00000000 00000000 00000000)                
AUD_C2_LO_THR:                   00000000   (00000000 00000000 00000000 00000000)                
AUD_PLL_EN:                      00000003   (00000000 00000000 00000000 00000011)                
AUD_PLL_SRC:                     00000019   (00000000 00000000 00000000 00011001)                
AUD_PLL_SHIFT:                   00000002   (00000000 00000000 00000000 00000010)                
AUD_PLL_IF_SEL:                  00000009   (00000000 00000000 00000000 00001001)                
AUD_PLL_IF_SHIFT:                00000000   (00000000 00000000 00000000 00000000)                
AUD_BIQUAD_PLL_K0:               00008a68   (00000000 00000000 10001010 01101000)                
AUD_BIQUAD_PLL_K1:               00092305   (00000000 00001001 00100011 00000101)                
AUD_BIQUAD_PLL_K2:               00100000   (00000000 00010000 00000000 00000000)                
AUD_BIQUAD_PLL_K3:               00fcb368   (00000000 11111100 10110011 01101000)                
AUD_BIQUAD_PLL_K4:               00080000   (00000000 00001000 00000000 00000000)                
AUD_DEEMPH0_SRC_SEL:             00000011   (00000000 00000000 00000000 00010001)                
AUD_DEEMPH0_SHIFT:               00000000   (00000000 00000000 00000000 00000000)                
AUD_DEEMPH0_G0:                  00001604   (00000000 00000000 00010110 00000100)                
AUD_DEEMPH0_A0:                  000067a0   (00000000 00000000 01100111 10100000)                
AUD_DEEMPH0_B0:                  00000e20   (00000000 00000000 00001110 00100000)                
AUD_DEEMPH0_A1:                  0003c280   (00000000 00000011 11000010 10000000)                
AUD_DEEMPH0_B1:                  00003d80   (00000000 00000000 00111101 10000000)                
AUD_DEEMPH1_SRC_SEL:             00000013   (00000000 00000000 00000000 00010011)                
AUD_DEEMPH1_SHIFT:               00000000   (00000000 00000000 00000000 00000000)                
AUD_DEEMPH1_G0:                  00001604   (00000000 00000000 00010110 00000100)                
AUD_DEEMPH1_A0:                  000067a0   (00000000 00000000 01100111 10100000)                
AUD_DEEMPH1_B0:                  00000e20   (00000000 00000000 00001110 00100000)                
AUD_DEEMPH1_A1:                  0003c280   (00000000 00000011 11000010 10000000)                
AUD_DEEMPH1_B1:                  00003d80   (00000000 00000000 00111101 10000000)                
AUD_OUT0_SEL:                    0000003f   (00000000 00000000 00000000 00111111)                
AUD_OUT0_SHIFT:                  00000000   (00000000 00000000 00000000 00000000)                
AUD_OUT1_SEL:                    00000013   (00000000 00000000 00000000 00010011)                
AUD_OUT1_SHIFT:                  00000000   (00000000 00000000 00000000 00000000)                
AUD_RDSI_SEL:                    00000024   (00000000 00000000 00000000 00100100)                
AUD_RDSI_SHIFT:                  00000000   (00000000 00000000 00000000 00000000)                
AUD_RDSQ_SEL:                    00000024   (00000000 00000000 00000000 00100100)                
AUD_RDSQ_SHIFT:                  00000000   (00000000 00000000 00000000 00000000)                
AUD_DBX_IN_GAIN:                 00004734   (00000000 00000000 01000111 00110100)                
AUD_DBX_WBE_GAIN:                00004640   (00000000 00000000 01000110 01000000)                
AUD_DBX_SE_GAIN:                 00008d31   (00000000 00000000 10001101 00110001)                
AUD_DBX_RMS_WBE:                 000000c8   (00000000 00000000 00000000 11001000)                
AUD_DBX_RMS_SE:                  00001026   (00000000 00000000 00010000 00100110)                
AUD_DBX_SE_BYPASS:               00000000   (00000000 00000000 00000000 00000000)                
AUD_FAWDETCTL:                   00000678   (00000000 00000000 00000110 01111000)                
AUD_FAWDETWINCTL:                000012d6   (00000000 00000000 00010010 11010110)                
AUD_DEEMPHGAIN_R:                00010000   (00000000 00000001 00000000 00000000)                
AUD_DEEMPHNUMER1_R:              00000000   (00000000 00000000 00000000 00000000)                
AUD_DEEMPHNUMER2_R:              00000000   (00000000 00000000 00000000 00000000)                
AUD_DEEMPHDENOM1_R:              00000000   (00000000 00000000 00000000 00000000)                
AUD_DEEMPHDENOM2_R:              00000000   (00000000 00000000 00000000 00000000)                
AUD_ERRLOGPERIOD_R:              000003e8   (00000000 00000000 00000011 11101000)                
AUD_ERRINTRPTTHSHLD1_R:          00000fff   (00000000 00000000 00001111 11111111)                
AUD_ERRINTRPTTHSHLD2_R:          00000fff   (00000000 00000000 00001111 11111111)                
AUD_ERRINTRPTTHSHLD3_R:          00000fff   (00000000 00000000 00001111 11111111)                
AUD_NICAM_STATUS1:               000063e0   (00000000 00000000 01100011 11100000)                
AUD_NICAM_STATUS2:               00000009   (00000000 00000000 00000000 00001001)                
AUD_ERRLOG1:                     00000000   (00000000 00000000 00000000 00000000)                
AUD_ERRLOG2:                     00000000   (00000000 00000000 00000000 00000000)                
AUD_ERRLOG3:                     00000000   (00000000 00000000 00000000 00000000)                
AUD_DAC_BYPASS_L:                00000000   (00000000 00000000 00000000 00000000)                
AUD_DAC_BYPASS_R:                00000000   (00000000 00000000 00000000 00000000)                
AUD_DAC_BYPASS_CTL:              00000000   (00000000 00000000 00000000 00000000)                
AUD_CTL:                         00009200   (00000000 00000000 10010010 00000000)                
AUD_STATUS:                      000004b2   (00000000 00000000 00000100 10110010)                
AUD_VOL_CTL:                     000001c0   (00000000 00000000 00000001 11000000)                
AUD_BAL_CTL:                     00000000   (00000000 00000000 00000000 00000000)                
AUD_START_TIMER:                 00000000   (00000000 00000000 00000000 00000000)                
AUD_MODE_CHG_TIMER:              000001b5   (00000000 00000000 00000001 10110101)                
AUD_POLYPH80SCALEFAC:            00000003   (00000000 00000000 00000000 00000011)                
AUD_DMD_RA_DDS:                  00c33eac   (00000000 11000011 00111110 10101100)                
AUD_I2S_RA_DDS:                  00400000   (00000000 01000000 00000000 00000000)                
AUD_RATE_THRES_DMD:              00000000   (00000000 00000000 00000000 00000000)                
AUD_RATE_THRES_I2S:              000000b4   (00000000 00000000 00000000 10110100)                
AUD_RATE_ADJ1:                   00000100   (00000000 00000000 00000001 00000000)                
AUD_RATE_ADJ2:                   00000200   (00000000 00000000 00000010 00000000)                
AUD_RATE_ADJ3:                   00000300   (00000000 00000000 00000011 00000000)                
AUD_RATE_ADJ4:                   00000400   (00000000 00000000 00000100 00000000)                
AUD_RATE_ADJ5:                   00000500   (00000000 00000000 00000101 00000000)                
AUD_APB_IN_RATE_ADJ:             00000001   (00000000 00000000 00000000 00000001)                
AUD_PHASE_FIX_CTL:               00000020   (00000000 00000000 00000000 00100000)                
AUD_PLL_PRESCALE:                00000002   (00000000 00000000 00000000 00000010)                
AUD_PLL_DDS:                     00000000   (00000000 00000000 00000000 00000000)                
AUD_PLL_INT:                     0000001e   (00000000 00000000 00000000 00011110)                
AUD_PLL_FRAC:                    0000e542   (00000000 00000000 11100101 01000010)                
AUD_PLL_JTAG:                    00000000   (00000000 00000000 00000000 00000000)                
AUD_PLL_SPMP:                    00000004   (00000000 00000000 00000000 00000100)                
AUD_AFE_12DB_EN:                 00000001   (00000000 00000000 00000000 00000001)                
AUD_PDF_DDS_CNST_BYTE2:          48         (01001000)                                            
AUD_PDF_DDS_CNST_BYTE1:          3d         (00111101)                                            
AUD_PDF_DDS_CNST_BYTE0:          f5         (11110101)                                            
AUD_QAM_MODE:                    05         (00000101)                                            
AUD_PHACC_FREQ_8MSB:             3a         (00111010)                                            
AUD_PHACC_FREQ_8LSB:             4a         (01001010)                                            
MO_GP0_IO:                       0000619e   (00000000 00000000 01100001 10011110)                
MO_GP1_IO:                       000000ff   (00000000 00000000 00000000 11111111)                
MO_GP2_IO:                       00000001   (00000000 00000000 00000000 00000001)                
MO_GP3_IO:                       00000000   (00000000 00000000 00000000 00000000)                

end of dump
Zealoth
Присоединяюсь, очень нужно.
Сам хотел сделать себе быстренько переходничок между пультом и тупо эмулятором клавиатуры, смотрел SDK - ничего сложного нет, даже в Delphi можно загрузить, через импорт tlb из dll-ки, а там в компоненте очень легко все. А времени все нет, а так бы и формат ваших плагинов изучил бы и сделал бы уже сам )
gonzales
Цитата
Присоединяюсь, очень нужно.
Сам хотел сделать себе быстренько переходничок между пультом и тупо эмулятором клавиатуры, смотрел SDK - ничего сложного нет, даже в Delphi можно загрузить, через импорт tlb из dll-ки, а там в компоненте очень легко все. А времени все нет, а так бы и формат ваших плагинов изучил бы и сделал бы уже сам )


со временем такая же беда. Если все-таки появится возможность могу поделиться SDK к плагинам.
Только мне кажется, что там все не так просто, потому как в дельфях нельзя из сишной библиотеки импортировать класс. Я в таких случаях писал дополнительную библу на си, которая инициализировала бы класс и только экспортировала бы функции определения кода нажатой кнопки.

При желании можем пообщаться в привате
Zealoth
Итак, друзья, сделал на скорую руку бридж между пультом и клавиатурой.
Запускается так: ProfRmtToKbdBridge.exe "путь_к_исполняемому_файлу" "путь_к_файлу_настроек". Можно сделать разные ярлыки с параметрами для разных программ.
Исполняемый файл - это программа, в которой надо использовать пульт (проигрыватель какой-нибудь, я использую для программы просмотра спутникового телевидения DVBViewer). Бридж запустится, запустит эту программу и будет работать - переводить нажатия на пульте в нажатия клавиатуры - пока программа не завершит свою работу. После выгрузки приложения выгружается и бридж.
Файл настроек - это простой текстовый файл с ассоциациями между кодом кнопки и сочетанием клавиш, нажатие которых должно эмулироваться. Например, "136=Down" означает, что при нажатии кнопки "Вниз" на пульте (код этой кнопки 136) должно сэмулироваться нажатие клавиши управления крусором "Вниз" (обозначения клавиш интуитивно-понятные, например, "Enter", "PgUp", "F4", "Ctrl+A", "Ctrl+Shift+F9" и т.п.).
Дальше, если эта тема будет кому-нибудь интересна, выложу коды всех кнопок пульта. В прилагаемом архиве пример конфигурационного файла для DVBViewer-а, там используются почти все кнопки, можно будет разобраться в принципе.
ВНИМАНИЕ! Перед использованием нужно сделать одну важну вещь. Скопировать файл TBSdevice.dll в системную папку (в Windows XP, например, по умолчанию такой путь - c:\windows\system32). Затем выполнить (Пуск-Выполнить...) следующую команду: "regsvr32 tbsdevice.dll". Должно появиться сообщение со словами "завершено успешно" smile.gif На этом установка завершена.
=========
Так же для автора "Перехвата" выкладываю исходник - может это поможет сделать плагин smile.gif (моя аська если что - 334400004).
=========
Программа здесь - http://ifolder.ru/10644230
Исходник здесь - http://ifolder.ru/10644232
=========
В общем, тестируйте, пишите ))
gonzales
сделал плагин на основе программы от Zealoth.
тестируйте
Zealoth
В общем работает, пока полет нормальный cool.gif
Только при удержании кнопки не повторяются нажатия, как в моей программе - может этот режим надо в Перехвате включать как-то или так и должно быть?...
gonzales
Цитата
Только при удержании кнопки не повторяются нажатия

странно. по коду не пойму почему так сложно сделано. Функция Tuner.GetRemoteControl(adr, cmd); разве не возвращает значение кода при удержании клавиши?
грубо говоря, если я в цикле пишу Tuner.GetRemoteControl(adr, cmd), то значение cmd меняется на 0 при удержании кнопки?
Zealoth
Функция МЕНЯЕТ значение переменной cmd если "что-то изменилось". Если кнопка на пульте не отпускалась и не нажималась, то значение переменной не трогается вообще - оно остается таким же как и на входе.
Поэтому перед вызовом GetRemoteControl переменную cmd не надо обнулять - так можно будет поймать только нажатие кнопки. При отпускании значение cmd будет изменено на 0 (ноль). Значит переменная должна быть глобальная и меняться только этой функцией.
Грубо говоря код должен быть такого типа:
Код
var adr, cmd: Cardinal;
begin
cmd:=0; \\ один раз вначале обнуляем и этого достаточно
while true do
begin
  Tuner.GetRemoteControl(adr, cmd);
  if cmd<>0 then OnRemoteButtonPressed(cmd); \\то есть cmd не будет равен нулю пока кнопка удерживается
  sleep(100);
end;
end;

Я усложнил код чтобы реализовать задержку после нажатия и последующий повтор с определенным промежутком времени, как при удержании кнопки на клавиатуре.
Да, задержка в цикле должна быть, и не меньше 50мс, выявлено опытным путем. Если меньше, то при удержаниие кнопки на пульте через 1-2 секунды почему-то в 0 сбрасывается.
gonzales
Цитата
значение переменной не трогается вообще - оно остается таким же как и на входе.
так у меня так и реализовано, примерно как у Вас в коде, только без цилка While, а обращение к функции идет по таймеру, странно, что повторение не идет.


Цитата
Да, задержка в цикле должна быть, и не меньше 50мс, выявлено опытным путем.

может в этом причина, Вы не пробывали частоту опроса увеличить немного? Она по умолчанию 50мс.
Zealoth
Когда я тестировал компонент, то как раз делал через таймер, в таймере была задержка 100...
Частота опроса ыставляет частоту в таймере? Попробую когда до дома доберусь smile.gif
klifster
Цитата(Zealoth @ Feb 24 2009, 13:18 ) *
Когда я тестировал компонент, то как раз делал через таймер, в таймере была задержка 100...
Частота опроса ыставляет частоту в таймере? Попробую когда до дома доберусь smile.gif

выложи коды всех кнопок пульта.
Gadzilla
Прога не видит тюнер, че делать.
Мастер не запускается (галочки ставил)
gonzales
Цитата
Прога не видит тюнер, че делать.
Мастер не запускается (галочки ставил)

а сообщение об ошибке какое-нить появляется, или просто не высвечивается название устройства?
Gadzilla
Цитата(gonzales @ Apr 2 2009, 11:07 ) *
Цитата
Прога не видит тюнер, че делать.
Мастер не запускается (галочки ставил)

а сообщение об ошибке какое-нить появляется, или просто не высвечивается название устройства?


При запуске прога выдает чтото матерное на английском, про какуюто библиотеку DLL
сама прога показывает внизу справа Устройство не настроено или что то в этом духе

Доп.инфа
Дрова на тюнер стоят последние мартовские
Пульт родной есть, хотя планирую от ящика 32lg5000 подцепить
Установлены dvbdream и altdvb
Комп: Cel 430, Asus p5lmx, ddr 512, XP SP3 Philka

Чего тока не пробовал, мастер просит скачать из нета плагин, а потом закидать в папку, а потом произвести автонастройку
Тока как произвести автонастройку, если после закидывания плагина мастер больше не запускается (галочки ставил)

В дивибидриме родной пульт работает номально
gonzales
Цитата
При запуске прога выдает чтото матерное на английском, про какуюто библиотеку DLL

это самое главное. что именно в сообщении?
Gadzilla
Цитата(gonzales @ Apr 2 2009, 18:12 ) *
Цитата
При запуске прога выдает чтото матерное на английском, про какуюто библиотеку DLL

это самое главное. что именно в сообщении?

Вечером напишу
hober
Цитата(Gadzilla @ Apr 3 2009, 09:31 ) *
Цитата(gonzales @ Apr 2 2009, 18:12 ) *
Цитата
При запуске прога выдает чтото матерное на английском, про какуюто библиотеку DLL

это самое главное. что именно в сообщении?

Вечером напишу


Аналогично, чистая система ( XP), перехвать 2.3.1, ругань на perhvat.dll ( пульт не работает )
gonzales
проверьте наличие библиотек в папке system32 - perehvat.dll и TBSdevice.dll
Gadzilla
Цитата(gonzales @ Apr 3 2009, 21:10 ) *
проверьте наличие библиотек в папке system32 - perehvat.dll и TBSdevice.dll


А если их не будет, то откуда их взять (нет тока на работе, а пульт дома)
hober
Цитата(Gadzilla @ Apr 6 2009, 12:07 ) *
Цитата(gonzales @ Apr 3 2009, 21:10 ) *
проверьте наличие библиотек в папке system32 - perehvat.dll и TBSdevice.dll


А если их не будет, то откуда их взять (нет тока на работе, а пульт дома)


библиотеки лежат.

А вот собственно ошибка:
Exception EOleSysError in module Perehvat.dll at 00055785
Gadzilla
Цитата(hober @ Apr 6 2009, 20:34 ) *
Цитата(Gadzilla @ Apr 6 2009, 12:07 ) *
Цитата(gonzales @ Apr 3 2009, 21:10 ) *
проверьте наличие библиотек в папке system32 - perehvat.dll и TBSdevice.dll


А если их не будет, то откуда их взять (нет тока на работе, а пульт дома)


библиотеки лежат.

А вот собственно ошибка:
Exception EOleSysError in module Perehvat.dll at 00055785


Да, у меня такая же хрень
gonzales
попробуйте тестовый плагин. Сообщите, появляются ли какие-нить сообщения
hober
Цитата(gonzales @ Apr 7 2009, 16:45 ) *
попробуйте тестовый плагин. Сообщите, появляются ли какие-нить сообщения


Попробовал, тоже самое. Только теперь при выборе устройства ошибка множится ( помог тока ребут )
gonzales
при выборе устройства или плагина? есть ли какие-нить сообщения типа Create tuner и тд?
hober
Цитата(gonzales @ Apr 7 2009, 23:29 ) *
при выборе устройства или плагина? есть ли какие-нить сообщения типа Create tuner и тд?


Да, при запуске выскакивает Create tuner, после нажатия кнопки ок опять выскакивает таже ошибка, но в программу входит. Если в программе выбираю драйвер prof - опять вываливается эта ошибка.
Gadzilla
Цитата(gonzales @ Apr 7 2009, 23:29 ) *
при выборе устройства или плагина? есть ли какие-нить сообщения типа Create tuner и тд?


Да, выскакивает тепреь именно это сообщение
Gadzilla
Цитата(Gadzilla @ Apr 8 2009, 09:20 ) *
Цитата(gonzales @ Apr 7 2009, 23:29 ) *
при выборе устройства или плагина? есть ли какие-нить сообщения типа Create tuner и тд?


Да, выскакивает тепреь именно это сообщение



Народ, ну что с этой замечательной прогой - уже все настроил, в том числе и meedio, и плагин на нее есть, остается только дело за пультом
Gadzilla
[/quote]
выложи коды всех кнопок пульта.
[/quote]

Запустил пульт при помощи бриджа между пультом и клавиатурой (автору спасибо) - очень удобно, любая прога подвязывается, хотя мне достаточно Meedio, так как из нее все запускаю

А коды кнопок для пульта - у кого есть или где их взять
alecsiaaleo
Что то странно как то пульт работает что через плагин Проф что через бриджь для клавиатуры, станность заключается в том что происходят огромные задержки между нажатием кнопки на пульте и исполнением команды, иногда кнопку уже отпустил а команды еше секунду полтары продалжают исполнятся. Вчем здесь проблема подскажите и как ее исправить можно. И еше почемуто реакция на кнопки пульта идет с запозданием при многократном нажатие.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Invision Power Board © 2001-2010 Invision Power Services, Inc.