![]() |
![]() |
![]() |
|
Проигрывать видео в 1С 7.7 | ☑ | ||
---|---|---|---|---|
0
burrya
27.05.10
✎
15:27
|
Всем привет!
Подскажите как на обработке можно воспроизвести видеофайл!!! |
|||
1
Salvador Limones
27.05.10
✎
15:27
|
ActiveX
|
|||
2
Dzenn
гуру
27.05.10
✎
15:37
|
В помощь тебе куча компонентов ActiveX. Самый доступный для использования - Windows Media Player. При наличии определенного опыта можно сделать через Flash (SWF) в компоненте Shockwave Flash Object.
|
|||
3
burrya
27.05.10
✎
15:44
|
через Windows Media Player можно будет организовать прокрутку всех видео из определенной папки?
|
|||
4
mishaPH
27.05.10
✎
15:45
|
(0) простите. а зачем в 1с видео??
|
|||
5
Ёпрст
гуру
27.05.10
✎
15:46
|
(3) да.
|
|||
6
burrya
27.05.10
✎
15:46
|
(4) :) желание клиента - закон
|
|||
7
burrya
27.05.10
✎
15:48
|
(5) имеется ввиду тот ActiveX, который подключается через таблицу или через какую-то внешнюю компоненту?
|
|||
8
mishaPH
27.05.10
✎
15:49
|
(6) это понятно. но что в 1с можно к видео присобачить
|
|||
9
Salvador Limones
27.05.10
✎
15:49
|
(7) Перебирай все видео средствами 1С
|
|||
10
smaharbA
27.05.10
✎
15:50
|
можно вставить в форму медиаплейер без активикса
|
|||
11
burrya
27.05.10
✎
15:51
|
(10) как?
|
|||
12
smaharbA
27.05.10
✎
15:51
|
(11) три варианта
|
|||
13
burrya
27.05.10
✎
15:51
|
(9) не понял Вас
|
|||
14
Ёпрст
гуру
27.05.10
✎
15:52
|
(10) некрасиво же ..без интерфейса на морде.
|
|||
15
smaharbA
27.05.10
✎
15:52
|
но лучче с активиксом, очень популярна (и заслуженно конечно) 1с++
|
|||
16
smaharbA
27.05.10
✎
15:52
|
(14) я предлагаю целиком медиаплейер затолкать ))
|
|||
17
burrya
27.05.10
✎
15:57
|
(14)(16) а можно поподробнее?
|
|||
18
smaharbA
27.05.10
✎
16:42
|
(17) запускаешь медиаплейер, можно скрытым
и динамик врапером делаешь его дочерним форме и указываешь координаты |
|||
19
burrya
27.05.10
✎
17:01
|
смотрю ActiveX
как называется класс для ActiveX Windows Media Player? Что-то не получается запустить Windows Media Player по след структуре АтрФормы = СоздатьОбъект("АтрибутФормы"); АтрФормы.УстановитьАтрибут(Форма,"Атрибут"); Дерево=СоздатьОбъект("Windows Media Player");//класс-наследник АктивИкс АтрФормы.СоздатьЭлементУправления(Дерево); // СоздатьЭУ Дерево.СоздатьЭУ("Windows Media Player"); |
|||
20
Ёпрст
гуру
27.05.10
✎
17:07
|
||||
21
smaharbA
27.05.10
✎
17:07
|
WMPlayer.OCX
|
|||
22
Ёпрст
гуру
27.05.10
✎
17:07
|
(18) хитро..
дюнаврапер хорошая вещь.. |
|||
23
smaharbA
27.05.10
✎
17:09
|
(22) както делал вордом (как обычно )) ) всавлял cmd.exe
|
|||
24
zuza
27.05.10
✎
17:15
|
(20) Создание элемента управления MSComCtlLib.ImageComboCtl.2 не удалось
|
|||
25
Ёпрст
гуру
27.05.10
✎
17:17
|
(24) а 1сpp загружена хоть?
|
|||
26
zuza
27.05.10
✎
17:24
|
(25) да
|
|||
27
Ёпрст
гуру
27.05.10
✎
17:27
|
(26) а версия какая ? а MSCOMCTL.OCX ежели перезарегать?
а вот это выводит диалог выбора цвета ? |
|||
28
Ёпрст
гуру
27.05.10
✎
17:27
|
||||
29
Ёпрст
гуру
27.05.10
✎
17:28
|
+28 а если поменять на MSComCtlLib.ImageComboCtl ... ругается ?
|
|||
30
zuza
27.05.10
✎
17:29
|
(27) 1с++ 3.0.1.23
|
|||
31
zuza
27.05.10
✎
17:30
|
(28) Нет в системе файла comdlg32.ocx
|
|||
32
zuza
27.05.10
✎
17:31
|
+ (31) перезарегил MSCOMCTL.OCX, не помогло
|
|||
33
zuza
27.05.10
✎
17:32
|
(29) Создание элемента управления MSComCtlLib.ImageComboCtl не удалось
|
|||
34
Ёпрст
гуру
27.05.10
✎
17:34
|
(33) другие то хоть создаются ?
1сpp какой версии хоть? |
|||
35
Ёпрст
гуру
27.05.10
✎
17:34
|
+34 а вижу..
в реестре посмотри, есть ли MSComCtlLib.ImageComboCtl |
|||
36
zuza
27.05.10
✎
17:39
|
(35) все дело было в comdlg32.ocx
|
|||
37
zuza
27.05.10
✎
17:39
|
+(36) установил заработало :), спасибо
|
|||
38
burrya
27.05.10
✎
19:52
|
Перем Wmp1;
//====================================================================== Функция СоздатьКонтрол(ИмяКонтрола,ИмяАтрибутаФормы) АктивХ = СоздатьОбъект("АктивИкс") ; АктивХ.УстановитьАтрибут(Форма,ИмяАтрибутаФормы); АктивХ.СоздатьЭУ(ИмяКонтрола); Возврат АктивХ.Объект; КонецФункции // СоздатьКонтрол //====================================================================== Процедура ПослеСозданияФормы() //WMPlayer control Wmp1 = СоздатьКонтрол("WMPlayer.OCX.7","Wmp"); Wmp1.URL = "D:\MVI_4793.avi"; КонецПроцедуры // ПослеСозданяФормы при выполнении кода вылазит ошибка Wmp1.URL = "D:\MVI_4793.avi"; {D:\1CBASES\WMP\ВИДЕО.ERT(39)}: : |
|||
39
burrya
28.05.10
✎
10:10
|
очень странно даже текст ошибки не пишет!
|
|||
40
burrya
28.05.10
✎
10:46
|
в отладчике
Wmp1 = OLE.IWMPPlayer4 |
|||
41
Ёпрст
гуру
28.05.10
✎
10:58
|
(38)
Wmp1.FileName = "c:\1.mp3"; Wmp1.Controls.Play(); |
|||
42
burrya
28.05.10
✎
11:07
|
(41)
Wmp1.FileName = "c:\1.mp3"; {D:\1CBASES\WMP\ВИДЕО.ERT(40)}: Поле агрегатного объекта не обнаружено (FileName) в отладчике Wmp1.FileName = Ошибка в выражении! Wmp1.fullscreen = 0 |
|||
43
burrya
28.05.10
✎
11:09
|
хотя при попытке выполнить след код выходит ошибка
Wmp1.fullscreen = 1; {D:\1CBASES\WMP\ВИДЕО.ERT(39)}: : |
|||
44
Ёпрст
гуру
28.05.10
✎
11:23
|
блин, ну посмотри ты свойства контрола..
Плеер = СоздатьКонтрол("WMPlayer.OCX.7","Wmp"); Контрол = Плеер.controls; Плеер.URL = "D:\MVI_4793.avi"; Контрол .play(); |
|||
45
burrya
28.05.10
✎
11:53
|
Контрол = Плеер.controls;
{D:\1CBASES\WMP\ВИДЕО.ERT(45)}: : все равно не работает я прошу прощения за тупые вопросы, где можно посмотреть описание этого объекта? |
|||
46
Ёпрст
гуру
28.05.10
✎
11:57
|
(45) для начала, сам контрол на форме отобразился хоть?
|
|||
47
burrya
28.05.10
✎
12:05
|
(46)Белый квадрат
в нем написано "Здесь должен быть АктивИкс" и по диагоналям идут две линии |
|||
48
zuza
28.05.10
✎
12:31
|
(48) значит не отобразился
|
|||
49
burrya
28.05.10
✎
12:43
|
(48)и как его отобразить?
|
|||
50
Ёпрст
гуру
28.05.10
✎
12:46
|
(49) для начала, запустить (28).
|
|||
51
burrya
28.05.10
✎
13:54
|
Запустил - тоже самое
|
|||
52
burrya
28.05.10
✎
13:55
|
(50) Запустил - тоже самое
|
|||
53
Ёпрст
гуру
28.05.10
✎
13:57
|
(52) зарегь comdlg32.ocx и MSCOMCTL.OCX
|
|||
54
burrya
28.05.10
✎
14:13
|
зарегал! все равно.. :(
|
|||
55
Ёпрст
гуру
28.05.10
✎
14:18
|
(54) код в (28) выполняется ?
|
|||
56
burrya
28.05.10
✎
14:24
|
да
|
|||
57
Ёпрст
гуру
28.05.10
✎
14:40
|
(56) т.е диалоговое окошко появляется ?
И это, сейчас то что не работает ? Контрол - проигрыватель появился ? |
|||
58
Zakarum
28.05.10
✎
16:32
|
(57) попробовал твой код из (20)
//====================================================================== Функция СоздатьКонтрол(ИмяКонтрола,ИмяАтрибутаФормы) АктивХ = СоздатьОбъект("АктивИкс") ; АктивХ.УстановитьАтрибут(Форма,ИмяАтрибутаФормы); АктивХ.СоздатьЭУ(ИмяКонтрола); Возврат АктивХ.Объект; КонецФункции // СоздатьКонтрол //====================================================================== Процедура ПослеСозданияФормы() //ImageCombo control MSComCtlLib.ImageComboCtl.2 СоздатьКонтрол("MSComCtlLib.ImageComboCtl.2","ImageCombo"); //ImageList control MSComCtlLib.ImageListCtrl.2 СоздатьКонтрол("MSComCtlLib.ImageListCtrl.2","ImageList"); //ListView control MSComCtlLib.ListViewCtrl.2 СоздатьКонтрол("MSComCtlLib.ListViewCtrl.2","ListView"); //ProgressBar control MSComCtlLib.ProgCtrl.2 СоздатьКонтрол("MSComCtlLib.ProgCtrl.2","Prog"); //Slider control MSComCtlLib.Slider.2 СоздатьКонтрол("MSComCtlLib.Slider.2","Slider"); //StatusBar control MSComCtlLib.SBarCtrl.2 СоздатьКонтрол("MSComCtlLib.SBarCtrl.2","SBar"); //Toolbar control MSComCtlLib.Toolbar.2 СоздатьКонтрол("MSComCtlLib.Toolbar.2","Toolbar"); //TreeView control MSComCtlLib.TreeViewCtrl.2 СоздатьКонтрол("MSComCtlLib.TreeCtrl.2","Tree"); //WMPlayer control СоздатьКонтрол("WMPlayer.OCX.7","Wmp"); КонецПроцедуры // ПослеСозданяФормы вышли прямоугольники с текстом "Здесь должен быть АктивИкс" перенес АктивХ = СоздатьОбъект("АктивИкс") из функции в процедуру, добавил в начале Перем АтивИкс. После этого заработало |
|||
59
Ёпрст
гуру
28.05.10
✎
16:44
|
(58) не помню, вроде только в старых версиях 1cpp, были прроблемы, ежели Перем не объявишь..
|
|||
60
Zakarum
28.05.10
✎
16:45
|
(59) возможно. Но вот из контролов только последний отображался, пока не перенс создание объекта в процедуру ПослеСозданияформы()
|
|||
61
smaharbA
28.05.10
✎
19:27
|
а чо кмд еще никто не вложил ? ))
|
|||
62
ТочноеЯдро
28.05.10
✎
20:53
|
(18) как всегда рулит
*засечка* :) |
|||
63
orefkov
28.05.10
✎
21:12
|
Вроде как есть такая ВК - miracle.dll, которая умеет это.
|
|||
64
smaharbA
28.05.10
✎
21:41
|
(63) )))
|
|||
65
smaharbA
28.05.10
✎
21:42
|
а адинес умеет и без этого, ну разве что только со мсо и прочими апологетами)
|
|||
66
burrya
31.05.10
✎
12:35
|
Все классно работает спасибо!
Выподлняю код - проигрывается след файл, только не ставится во весь экран: //******************************************* Процедура ПослеСозданияФормы() АктивХ = СоздатьОбъект("АктивИкс") ; АктивХ.УстановитьАтрибут(Форма,"Wmp"); АктивХ.СоздатьЭУ("WMPlayer.OCX.7"); Плеер = АктивХ.Объект; Контрол = Плеер.Controls; Плеер.URL = "D:\MVI_4793.avi"; Плеер.FullScreen = 1; Контрол.play(); КонецПроцедуры Плеер.FullScreen = 1; {D:\1CBASES\PT\EXTFORMS\ТАВТ.ERT(663)}: : Как сделать FullScreen Благодарю. |
|||
67
burrya
31.05.10
✎
15:33
|
вопрос решился так:
Плеер.URL = "D:\TBA\ShowroomfilmGolfGTI2009.mpg"; Плеер.settings.volume = 100; Контрол.play(); Пока Плеер.playState <> 3 Цикл Состояние("Preparing new media item."); КонецЦикла; Плеер.FullScreen = -1; Только этот код уже лучше вызывать не в ПослеСозданияФормы(), а то 1с может подвиснуть |
|||
68
burrya
31.05.10
✎
15:33
|
Всем спасибо! Вы крутые мужики.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |