Форум » FiveWin » при выполнении oImage:LoadBMP() программа вываливается » Ответить

при выполнении oImage:LoadBMP() программа вываливается

Softlog86: при многократном вызове oImage:LOADBMP(FotoFile) прога вываливается с сообщением " FIVEWIN вызвал общую ошибку защиты в модуле NVIEW16.DLL " При перемещении указателя по БД - в соседнем окошке подгружается фото (oImage:LOADBMP(FOTO) , oImage:Refresh()) Может вылететь на 5-м показе а может и на 20-м ..... Подскажите - может использовать другие библы для просмотра JPG ?

Ответов - 31, стр: 1 2 All

Pasha: Если это харбор, то можно использовать библиотеку freeimage Также на fivetech недавно выложили ImageViewer: http://67.222.39.232/forums/viewtopic.php?t=13725 Может она подойдет

Softlog86: У меня обычный FiveWin 2.1d :( А FreeImage - Не хочет собирать ... ругается на недостающую переменную или что-то в этом роде .....

Pasha: Softlog86 пишет: А FreeImage - Не хочет собирать Ну да, это win32 библиотека. С клиппером работать не будет


Softlog86: Иииии что делать ???

Dima: Softlog86 пишет: Иииии что делать ??? Искать FW[X] По ходу freeimage я собрал. Но не задача с примером contrib\freeimage\tests\ Во время сборки получаем [pre] ..\include\FreeImage.ch(134) Error E0024 Error in #pragma ..\include\FreeImage.ch(170) Error E0024 Error in #pragma ..\include\FreeImage.ch(202) Error E0024 Error in #pragma ..\include\FreeImage.ch(250) Error E0024 Error in #pragma [/pre] Смотрим FreeImage.ch Падает сборка на этих строках [pre] [pre] #if (defined(WIN32) || defined(__WIN32__)) //#pragma pack(push, 1) #pragma pack(1) #else #pragma pack(1) #endif // WIN32 [/pre] Что править что бы собрать пример ?

Pasha: Dima пишет: Что править что бы собрать пример ? У меня тоже были эти ошибки. Я, не мудрствуя лукаво, просто забил все #pragma pack в FreeImage.ch. После этого библиотеку можно полноценно использовать.

Dima: Pasha Спасибо , помогло !!!

Softlog86: А про меня забыли ???? Чем открывать пикчезы чтоб не рушилось ?????? П О М О Г И Т Е ! ! ! Горит задача !!!

Dima: Softlog86 пишет: Чем открывать пикчезы чтоб не рушилось Раньше то же рушилось ? PS Может NVIEW16.DLL битый........

MMK: Dima пишет: PS Может NVIEW16.DLL битый........ Может и битый. А еще NVIEWLIB.DLL была, кажется :) ( уже лет десять прошло) А в общем-то для FW нонче используется freeimage который собирать совсем не надо :) Берешь эту ДЛЛ и просто размещаешь "рядом" с задачей. ( кстати они тоже разные могут быть ) Да ,а вот при сборке своей задачи надо использовать "Image.ch" #xcommand @ <nRow>, <nCol> Image [ <oBmp> ] ; [ <resource: NAME, RESNAME, RESOURCE> <cResName> ] ; [ <file: FILE, FILENAME, DISK> <cBmpFile> ] ; [ <NoBorder:NOBORDER, NO BORDER> ] ; [ SIZE <nWidth>, <nHeight> ] ; [ <of: OF, WINDOW, DIALOG> <oWnd> ] ; [ <lClick: ON CLICK, ON LEFT CLICK> <uLClick> ] ; [ <rClick: ON RIGHT CLICK> <uRClick> ] ; [ <scroll: SCROLL> ] ; [ <adjust: ADJUST> ] ; [ CURSOR <oCursor> ] ; [ <pixel: PIXEL> ] ; [ MESSAGE <cMsg> ] ; [ <update: UPDATE> ] ; [ WHEN <uWhen> ] ; [ VALID <uValid> ] ; [ <lDesign: DESIGN> ] ; => ; [ <oBmp> := ] TImage():New( <nRow>, <nCol>, <nWidth>, <nHeight>,; <cResName>, <cBmpFile>, <.NoBorder.>, <oWnd>,; [\{ |nRow,nCol,nKeyFlags| <uLClick> \} ],; [\{ |nRow,nCol,nKeyFlags| <uRClick> \} ], <.scroll.>,; <.adjust.>, <oCursor>, <cMsg>, <.update.>,; <{uWhen}>, <.pixel.>, <{uValid}>, <.lDesign.> ) #xcommand REDEFINE Image [ <oBmp> ] ; [ ID <nId> ] ; [ <of: OF, WINDOW, DIALOG> <oWnd> ] ; [ <resource: NAME, RESNAME, RESOURCE> <cResName> ] ; [ <file: FILE, FILENAME, DISK> <cBmpFile> ] ; [ <lClick: ON ClICK, ON LEFT CLICK> <uLClick> ] ; [ <rClick: ON RIGHT CLICK> <uRClick> ] ; [ <scroll: SCROLL> ] ; [ <adjust: ADJUST> ] ; [ CURSOR <oCursor> ] ; [ MESSAGE <cMsg> ] ; [ <update: UPDATE> ] ; [ WHEN <uWhen> ] ; [ VALID <uValid> ] ; => ; [ <oBmp> := ] TImage():ReDefine( <nId>, <cResName>, <cBmpFile>,; <oWnd>, [\{ |nRow,nCol,nKeyFlags| <uLClick> \}],; [\{ |nRow,nCol,nKeyFlags| <uRClick> \}],; <.scroll.>, <.adjust.>, <oCursor>, <cMsg>, <.update.>,; <{uWhen}>, <{uValid}> )

Pasha: MMK пишет: А еще NVIEWLIB.DLL была Это тоже для харбора. А причина вываливания, скорее всего, в том, что nview16.lib не распознает формат рисунка. Вот ссылка у Патрика: http://www.fivewin.info/html/downloads.php?category=FiveWin%20users%20contributions&id=287 This TImage class uses the free Freeimage.dll to read/write image files. FreeImage is a library to support popular graphics image formats (BMP, JPEG, TIFF, PCX and others). Original code from Enrico Maria Giordano, enhanced by Hector Rodriguez and Patrick Mast. Sample code and application included. ... Compiler: [x]Harbour & Clipper

MMK: Pasha пишет: NVIEWLIB.DLL была Это тоже для харбора. А причина вываливания, скорее всего, в том, что nview16.lib не распознает формат рисунка. Вот ссылка у Патрика: http://www.fivewin.info/html/downloads.php?category=FiveWin%20users%20contributions&id=287 This TImage class uses the free Freeimage.dll to read/write image files. FreeImage is Спорить не буду :) Не помню. Эта длл у меня 1997 года и использовал я ее с клиппером То , что написал Патрик по поводу Freeimage.dll в равной степени относилось и к NVIEW16.DLL Но ты умница :) Скорее всего это действительно ошибка формата. Точно помню , что для клиппера у меня возникал вопрос с Jpg форматом. Делал следующее - открывал этот файл каким-либо редвктором и "пересохранял" . Jpg они ведь внутри все разные :) А вот с харбором на эти вилы пока не наривался :)

Softlog86: Значит выхода из этой ситуации нет ???

MMK: Softlog86 пишет: Значит выхода из этой ситуации нет ??? Вы меня удивляите ... Да даже если Вас съели , то у Вас как минимум еще два выхода. Если Вы прочитаете то , что написано выше , то там говориться что : 1. надо сделать анализ ситуации - на каких картинках вываливается .Возможно собака порылась именно в них. 2. взять другую копию длл , если надо могу выслать 3. в конце концов предложить текст пр-мы к всеобщему удовольствию :)) Не унывайте !!

Dima: Softlog86 пишет: при многократном вызове oImage:LOADBMP(FotoFile) Попробуй многократно вызвать картинку на которой изначально не падает , упадет ли ? Если нет , тогда скорее всего. MMK пишет: 1. надо сделать анализ ситуации - на каких картинках вываливается .Возможно собака порылась именно в них. MMK пишет: открывал этот файл каким-либо редвктором и "пересохранял"

Pasha: Softlog86 пишет: Значит выхода из этой ситуации нет ??? Как это нет ?!! Выход есть всегда ! Надо всего лишь скачать класс, использующий freeimage, с сайта Патрика, и прицепить его к своей программе. Изменения там минимальные, даже имя класса такое же.

Softlog86: Спасибо ВСЕМ ! Я начинающий и в такие дебри сложновато влазить ... буду пробовать

Loach: Эсли не хотите в дебри, тогда просто переведите всё в BMP и фсе проблемы отпадут :)

Softlog86: в BMP не получится . У нас каталог из JPG в 400 Мег .....

fil: На старом сайте P.Mast'a http://www.fivewin.info/html/downloads.php есть ссылка на класс tappbox - это такая штука для embedding'a чего-либо в свое окно(можно какой-нить вьювер попроще под Jpg)



полная версия страницы