|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
ребята,задача такова,что нужно отсканированные документы сохранять и просматривать в проге,написанной на PB 5.0 подскажите,можно ли для просмотра BLOB полей базы вызывать внешние какие нибудь программы или лучше всётаки присваивать эти значения контролам типа picture(Original size)/Кто как решал подобные вопросы. И ещё одно,-если одному документу соответствует несколько отсканированных рисунков,как реализовать поумнее удобный их просмотр...?? Заранее спасибо за мысли...) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2009, 10:05 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
Andreas_84ребята,задача такова,что нужно отсканированные документы сохранять и просматривать в проге,написанной на PB 5.0 подскажите,можно ли для просмотра BLOB полей базы вызывать внешние какие нибудь программы или лучше всётаки присваивать эти значения контролам типа picture(Original size)/Кто как решал подобные вопросы. И ещё одно,-если одному документу соответствует несколько отсканированных рисунков,как реализовать поумнее удобный их просмотр...?? Заранее спасибо за мысли...) PB 5.0 поддерживает OLE. Помещаем в OLE объект IE на форму и показываем там html документ в котором отображаем соотвествующие картинки... ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2009, 10:17 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
Локшин Марк, тоесть ,отсканировав документы,пользователи должны будут все картинки както сначала сохранить в формате html??? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2009, 10:27 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
Andreas_84тоесть ,отсканировав документы,пользователи должны будут все картинки както сначала сохранить в формате html??? HTML вы будете формировать программно перед показом пльзователю картинок. А ссылки на картинки в HTML <img src=...> будете указывать на файлы картинок сохраненные перед показом в какую-то временную папку. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2009, 10:55 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
Вообще вместо IE можно попробовать поискать контрол именно для отображения картинок, например в формате TIFF, в котором предусмотрена возможность хранения многостраничных документов. Конкретный OLE объект для этого не могу подсказать - не работал с этим. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2009, 10:59 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
Anatoly MoskovskyВообще вместо IE можно попробовать поискать контрол именно для отображения картинок, например в формате TIFF, в котором предусмотрена возможность хранения многостраничных документов. Конкретный OLE объект для этого не могу подсказать - не работал с этим. Да с тифом было бы нормально..Может кто то знает какой именно OLE лучше использовать? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2009, 11:56 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
сохранить BLOB в файл в какую-нибудь временную папочку на диске и потом Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2009, 13:15 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
VanoRсохранить BLOB в файл в какую-нибудь временную папочку на диске и потом Код: plaintext
Мелькающие окошки и куча открытых приложений - колхоз. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2009, 14:11 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
А чем вариант "контрол типа picture(Original size)" - плох? Всё находится и управляется в своем ПО. Делается выборка ID иллюстраций и сохраняется, например, в DS либо массиве. Ну, и по очереди берем ID и понему уже достаем из базы Blob, и вставляем его в контрол. В меню добавить навигацию по массиву (либо DS), а также кнопки управления размерами иллюстрации. И всё это не очень сложно и не к чему не привязан. Плюс можно встроить свой необходимый сервис. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2009, 14:31 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
AISА чем вариант "контрол типа picture(Original size)" - плох? Допустим не все форматы поддерживаются. По поводу сторонней программы для просмотра рисунков - IE снести из системы - это еще постараться нужно, а вот таскать за собой внешний просмоторщик - не очень удобно. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2009, 14:40 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
Я делаю так: ctdir = string(today(),'dd-mm-yyyy')+'_'+string(now(),'hh-mm-ss') ls_tempDir = SPACE(ll_bufferLength) IF GetTempPath(ll_bufferLength, ls_tempDir) = 0 THEN MessageBox("Temp папка не визначена", "Файл відкрито не буде.") return -1 END IF ls_tempDir = ls_tempDir +ctdir+'\' CreateDirectory ( ls_tempDir ) ..Создали папку во временной директории и туда выгружаем все файлы потом запускаем программу просмотра их Файл откроется в программе по умолчанию которая назначена в винде для просмотра его string ls_Null long ll_rc string ls_err_str long ll_last_error Any temp CONSTANT long FORMAT_MESSAGE_FROM_SYSTEM = 4096 SetNull(ls_Null) ll_rc = ShellExecuteA( Handle( This ), "open", & ls_tempdir+cfilename, ls_Null, ls_Null, 1) IF ll_rc > 1 THEN temp = 0 ll_last_error = GetLastError() if ll_last_error = 0 or ll_last_error = 126 then return -2 ls_err_str = Fill(Char(0),255) FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, temp, ll_last_error,& 0, ref ls_err_str, 255, 0) MessageBox("Помилка", ls_err_str,Exclamation!) END IF Вот обьявления всех ф-й FUNCTION long GetLastError() LIBRARY "kernel32" ALIAS FOR "GetLastError" FUNCTION long FormatMessage(Long dwFlags ,ref Any lpSource , Long dwMessageId ,Long dwLanguageId , ref String lpBuffer , & Long nSize , Long Arguments) LIBRARY "kernel32" ALIAS FOR "FormatMessageA" FUNCTION long ShellExecuteA( long hwnd, string lpOperation, string lpFile, string lpParameters, string lpDirectory, integer nShowCmd ) LIBRARY "SHELL32" FUNCTION ulong GetTempPath(ulong nBufferLength, ref string lpBuffer) & LIBRARY "kernel32" ALIAS FOR GetTempPathA ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2009, 15:08 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
FUNCTION ulong GetTempPath(ulong nBufferLength, ref string lpBuffer) & LIBRARY "kernel32" ALIAS FOR GetTempPathA Чего-то она возвращает короткую строку пути временной папки (ДОС-версия, каждая папка в пути не более 8 символов, с тильдами в конце). Что б это значило?? Хотя вроде как работает работа с файлами даже с такой строкой... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.07.2010, 13:46 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
Vadim RomanenkoFUNCTION ulong GetTempPath(ulong nBufferLength, ref string lpBuffer) & LIBRARY "kernel32" ALIAS FOR GetTempPathA Чего-то она возвращает короткую строку пути временной папки (ДОС-версия, каждая папка в пути не более 8 символов, с тильдами в конце). Что б это значило?? Хотя вроде как работает работа с файлами даже с такой строкой... Потому, что Windows поддерживает альтернативные имена для файлов. Если хочется длинного пути воспользуйтесь функцией Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.07.2010, 14:05 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
Можно использовать примитивный ListView, если писать изображения во временную папку, смотрите пример ... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.07.2010, 19:42 |
|
просмотр изображений из PowerBuilder5.0
|
|||
---|---|---|---|
#18+
Я в свое время сделал сервис прикрепления произвольных файлов к разного рода объектам в программе на PB9 через OLE В частности для файлов произвольного формата предполагалось что система сама успешно сопоставит файлу нужную программу вот так: ole_1.insertfile(tempfile) Все это успешно работало но на Висте обломалось по неизвестным причинам Пришел к выводу что чисто для просмотра картинок самое надежное: run('Explorer.EXE '+tempfile) - работает везде PS НА самом деле сделано по- разному для разных типов файлов например Excel и Word - через OLE - там все хорошо ... |
|||
:
Нравится:
Не нравится:
|
|||
12.07.2010, 20:53 |
|
|
start [/forum/topic.php?fid=15&fpage=25&tid=1335918]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 290ms |
total: | 425ms |
0 / 0 |