![]() |
|
Читаем PDF файл в 1С77 без ВК,нужен Acrobat Reader7(можно с 3 но переписать | ☑ | ||
---|---|---|---|---|
0
smaharbA
01.02.06
✎
19:50
|
Функция RClipboard()
oIE = CreateObject("InternetExplorer.Application"); oIE.navigate("about:blank"); oIE.visible = 0; Пока oIE.ReadyState<4 Цикл Состояние("Ждем загрузку..."); КонецЦикла; texts = oIE.Document.parentWindow.clipboardData.getData ("Text"); oIE.Quit(); Возврат texts; КонецФункции // //******************************************* Процедура Сформировать() Файл=""; Каталог="C:\scripts\"; ФС.ВыбратьФайл(0,Файл,Каталог,"","PDF (*.pdf)|*.pdf","pdf"); Если ПустоеЗначение(Файл)=1 Тогда Возврат; КонецЕсли; wshshell=createobject("wscript.shell"); oIE1=CreateObject("InternetExplorer.Application"); oIE1.FullScreen=-1; oIE1.Navigate ("file:///"+Каталог+Файл); oIE1.Width=0; oIE1.Height=0; Пока oIE1.ReadyState<4 Цикл Состояние("Ждем загрузку..."); КонецЦикла; oIE1.Visible=-1; wshshell.sendkeys("^A"); wshshell.sendkeys("^C"); oIE1.quit(); Сообщить(RClipboard()); КонецПроцедуры ... Метода тупенькая, но "железная"... (опять пью...) |
|||
1
smaharbA
02.02.06
✎
07:53
|
А что никому не надо ?
Хоть скажите - лажа... Хоть поспорю, да самалюбие потешу свое ;) |
|||
2
fabrikant
02.02.06
✎
07:56
|
(1) Лажа
|
|||
3
smaharbA
02.02.06
✎
07:58
|
(2) Ну вот, спасибо за рецензию...
Зато ВК не надо и попробуй работает... |
|||
4
Андрюха
02.02.06
✎
07:59
|
А если IE нету?
|
|||
5
smaharbA
02.02.06
✎
08:10
|
(4) А что у тебя винда спец поставки ?
|
|||
6
ВторНик
02.02.06
✎
08:16
|
сейчас испытаем
|
|||
7
у лю 427
02.02.06
✎
08:18
|
а ИЕ - это по сути не ВК?
(4) попробуй снести ИЕ... если получится - доложи..., как сделал... |
|||
8
smaharbA
02.02.06
✎
08:33
|
(7) Ну ВК конечно если уж "дотошно" к этому подбираться ;)
Знаю что метода "аховая", но всеже какойто выход иногда... |
|||
9
acsent
02.02.06
✎
09:09
|
(0) Напиши лучше статью: Нестандартное исползование ОЛЕ объекта InternetExplorer
|
|||
10
evGenius
02.02.06
✎
09:11
|
(0) А напрямую к адобу слабо? А то получается двойной вызов 1С -> IE -> Acrobat
|
|||
11
smaharbA
02.02.06
✎
09:21
|
(10) Методов ненашел, пошукаю и найду
|
|||
12
Андрюха
02.02.06
✎
09:23
|
(7) Установка/удаление программ -> Компоненты Windows -> IE
|
|||
13
lisss
02.02.06
✎
09:24
|
(12)нет, это мы и так знаем, ты давай удали его, пусть у тебя винда на опере например поработает :)
|
|||
14
smaharbA
02.02.06
✎
09:30
|
(12) И в каком Windows ты это нашел ?
|
|||
15
lisss
02.02.06
✎
09:36
|
(12)смотри описание компонента: "Удаляет доступ к InternetExplorer с рабочего стола и главного меню"....
Не знаю, как бы это поточнее сказать, но все визуальные эффекты винды - результат работы IE: папки, рабочий стол.... |
|||
16
Андрюха
02.02.06
✎
09:42
|
(14) XP Pro SP2
|
|||
17
АЛьФ
модератор
02.02.06
✎
09:48
|
Ммммм... эээээ....
А почему бы не сделать проще? Процедура Сформировать() Файл=""; Каталог="C:\scripts\"; ФС.ВыбратьФайл(0,Файл,Каталог,"","PDF (*.pdf)|*.pdf","pdf"); Если ПустоеЗначение(Файл)=1 Тогда Возврат; КонецЕсли; ЗапуститьПриложение(Каталог+Файл); КонецПроцедуры |
|||
18
smaharbA
02.02.06
✎
09:56
|
(14) И удалится ? В 95 тоже можно было удалять ;)
(17) В (0) окно ИЕ нулевого размера и копируется с него все в буфер, а из буфера в переменную, ты же понимаешь что в (17) не сделать так просто окно реадера таким ;) |
|||
19
Пролдд
02.02.06
✎
09:58
|
(17) неафтоматизировано получится.
Кто знает, как из Акробата скинуть в Word, не через буфер обмена? |
|||
20
АЛьФ
модератор
02.02.06
✎
10:04
|
2(18) Аааа... Прости, тормознул.
|
|||
21
smaharbA
03.02.06
✎
02:42
|
Максимально упростил...;)
Процедура Сформировать() Файл=""; Каталог="C:\scripts\"; ФС.ВыбратьФайл(0,Файл,Каталог,"","PDF (*.pdf)|*.pdf","pdf"); Если ПустоеЗначение(Файл)=1 Тогда Возврат; КонецЕсли; wshshell=СоздатьОбъект("wscript.shell"); oIE=СоздатьОбъект("InternetExplorer.Application"); oIE.Navigate ("file:///"+Каталог+Файл); wshshell.sendkeys("^A^C"); oIE.Navigate (""); Пока oIE.ReadyState<4 Цикл Состояние("Ждем...") КонецЦикла; txt = oIE.document.parentwindow.clipboardData.getData("Text"); oIE.Quit(); Сообщить(txt); КонецПроцедуры |
|||
22
Sonic_vlad
03.02.06
✎
04:13
|
(0) опять ерундой страдаешь?
|
|||
23
arta
05.02.06
✎
16:52
|
Не отрабатываются wshshell.sendkeys("^A^C"). Где могут быть грабли?
Вручную после oIE.Visible = 1 Ctrl-A срабатывает, а wshshell.sendkeys("^A") нет... |
|||
24
smaharbA
06.02.06
✎
08:14
|
(23) Знаю уже, этоже только пример был, счас рабочий код выложу, с большими файлами лучче постронично читать...
|
|||
25
arta
06.02.06
✎
18:27
|
Ну вот... а я сидел полночи ошибку в 10 строках искал :)
|
|||
26
spock
06.02.06
✎
18:44
|
Уважаю (0) за то упорство, которое он проявляет, чтобы доказать, что ВК в 1С не нужны :)
|
|||
27
arta
06.02.06
✎
22:07
|
А именно ВК и не нужны... Почти все можно реализовать либо через WSH, либо различными ocx/activex.
У меня на данный момент реализовано несколько фич, ну где для них ВК наберешься :) 1. Работа с RFID картами (идентификация сотрудника в документообороте, пусть слабая защита, но там ее и не нужно) 2. Чтение служебной информации с мобильного телефона (конфа сервисного центра) 3. Работа с удаленным со сканером, причем сканер установлен на Linux-тонком клиенте. 4. Проверка фотографий/изображений на соответствие определенным критериям (dpi/размер), кому-то странно, для нас очень важно. 5. Запись сессии пользователя в avi. Можно было и скриншотами, но так оказалось нагляднее :) Извращаться можно долго, кому то ненужно, а я сам себе ставлю задачи, у меня начальника нету :) P.S. Про 1C++ конечно молчу, без нее никуды... :) |
|||
28
MMF
06.02.06
✎
23:37
|
(24) а ты на 1С напиши работу напрямую: http://www.wotsit.org/download.asp?f=pdfspec
|
|||
29
arta
07.02.06
✎
00:21
|
Есть много OCX для доступа к pdf, но пока не нашел фришных/крякнутых. Пока ищу - решил через копи/пасте и парсить :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |