On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
Andrey
постоянный участник




Пост N: 1929
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 15.11.11 21:36. Заголовок: Примеры из Минигуи -ошибки, вопросы..... (продолжение)


Всем привет.
Взялся смотреть примеры из МиниГуи, так не все работают. Может кто подскажет что там "допилить" нужно ?
А заодно может и исправить и добавить новые....

Очень красочный пример: \MiniGUI\SAMPLES\Advanced\AVI_Animation - не работает под Win7 (наверно AVI-шки нет в ресурсах)
Предложение Григорию:
Можно ли добавить еще один пример с отдельным AVI-файлом в ресурсах проекта и показом такого же бегунка ?


Пример: \MiniGUI\SAMPLES\Advanced\DisplayMode - не работает под ХР и далее....


Пример: \MiniGUI\SAMPLES\Advanced\Tsb_filter - вылетает на ХР
--------------------------------------------------------------------------------
Harbour MiniGUI Errorlog File
Harbour MiniGUI Extended Edition 2.0.1 - 2011.09.21
--------------------------------------------------------------------------------
Date: 11/15/2011 Time: 22:13:24
Error BASE/1124 Argument error: LEFT

Called from LEFT(0)
Called from SCANSOFT(195)
Called from MAIN(84)


Пример: \MiniGUI\SAMPLES\BASIC\MsgEdit - не собирается...
Z:\MiniGUI\SAMPLES\BASIC\MsgEdit>call ..\..\..\batch\compile.bat demo /L shell32
Harbour 3.1.0dev (Rev. 17042)
Copyright (c) 1999-2011, http://harbour-project.org/
Compiling 'demo.prg'...
Lines 20133, Functions/Procedures 30
Generating C source output to 'demo.c'... Done.
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
demo.c:
Error E2141 demo.prg 993: Declaration syntax error
*** 1 errors in Compile ***

C compile error.



Спасибо: 0 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]


SergKis



Пост N: 1779
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 16.03.18 22:45. Заголовок: Dima пишет По большо..


Dima пишет
 цитата:
По большому счету в ON INIT можно и убрать


поставить тиймер с сообщением на время и будет долбить фото.

 цитата:
Не помогло однако


у меня работает нормально, 1-раз инициализация, 2-раз пошла фото, так же и при restore ok


Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6765
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 16.03.18 22:51. Заголовок: SergKis Я тупанул ,..


SergKis
Я тупанул , сорри. Не придал значения этой строке и не добавлял ее
(This.Object):Event( 1, {|| CaptureImage() })

Все работает отлично
Спасибо !

Спасибо: 0 
Профиль
SergKis



Пост N: 1780
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 17.03.18 07:04. Заголовок: Dima С событиями, т..


Dima
С событиями, такой пример получается Скрытый текст


Спасибо: 0 
Профиль
SergKis



Пост N: 1781
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 17.03.18 07:11. Заголовок: PS пропустил, вместо..


PS
пропустил, вместо
ON RELEASE CloseWebCam() ;
надо
ON RELEASE wPost(2) ;
и
(This.Object):Event( 1, {| | CreateWebCam(), wPost(3) })


Спасибо: 0 
Профиль
SergKis



Пост N: 1782
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 17.03.18 08:36. Заголовок: Плюс в пример пульт ..


Плюс в пример пульт управления Скрытый текст


Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6766
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.03.18 09:39. Заголовок: SergKis Пример поня..


SergKis
Пример понятен. Спасибо.

Не понятно почему без такого подхода глючил Image_1 на Form_1
Ведь не должен.
Ведь в других примерах с IMAGE , при сворачивании окна и последующем поднятии
ни чего ведь не глючит.....

Спасибо: 0 
Профиль
SergKis



Пост N: 1783
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 17.03.18 10:30. Заголовок: Dima пишет Ведь не д..


Dima пишет
 цитата:
Ведь не должен.


Надо расставить DO EVENTS и заработает, очередь не успевает обработаться, сообщения теряются.
Я не хотел лезть во все функции, потому перевел пример на SET OOP ON.
Подправил родной пример, вроде пошел Скрытый текст


Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6767
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.03.18 10:56. Заголовок: SergKis пишет: Надо..


SergKis пишет:

 цитата:
Надо расставить DO EVENTS и заработает, очередь не успевает обработаться, сообщения теряются.


Понял тебя.
Есть еще вопрос.
Имеем запись в файл gPlusSaveHBitmapToFile( hBitmap, "webcam.jpg", nWidth, nHeight, "image/jpeg", 100 ) (переделал на JPG)
Хотелка: что бы в качестве nWidth и nHeight подставлялись значения исходя из максимального разрешения самой камеры.
Как то можно дернуть характеристики камеры ?

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6768
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 17.03.18 13:24. Заголовок: Пробнул тест снятия ..


Пробнул тест снятия скриншота математикой что шла с камерой.
Фоткал документ. На выходе получил картинку с разрешением 2048 на 1536.
Текст довольно читаем.
Попробовал сделать скриншот с помощью webcam_2 где в LoadFromClpbrd подправил
nWidth, nHeight на 2048 и 1536
И в gPlusSaveHBitmapToFile тоже подправил nWidth, nHeight на 2048 и 1536.
Текст на картине получил не такой читаемый и расплывчатый.
С 6-м параметром в gPlusSaveHBitmapToFile , игрался , не помогает. Разве что ухудшить
можно качество делая его меньше 100. Больше 100 , не пашет и видимо и не должно.

В чем прикол ?

Еще поигрался и вроде все дело в cap_EditCopy , именно она ложит в буфер такое корявое изображение.
Поставил паузу после cap_EditCopy и слямздил из буфера картинку в PAINT , так и есть.......

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6769
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.03.18 17:10. Заголовок: Может кто то портиро..


Может кто то портировать в Harbour функцию capSetVideoFormat ?

Спасибо: 0 
Профиль
gfilatov2002
moderator




Пост N: 1254
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 19.03.18 21:13. Заголовок: Dima пишет: портиро..


Dima пишет:

 цитата:
портировать в Harbour функцию capSetVideoFormat


Лови
#pragma BEGINDUMP 

#include <hbapi.h>
#include <windows.h>
#include <vfw.h>

#if defined( __BORLANDC__ )
#pragma warn -use /* unused var */
#endif

HB_FUNC( CAPSETVIDEOFORMAT )
{

BITMAPINFO binf;
HWND hCapWnd = (HWND) hb_parnl(1);

capGetVideoFormat(hCapWnd, &binf, sizeof(BITMAPINFO));
binf.bmiHeader.biWidth = hb_parni(2);
binf.bmiHeader.biHeight = hb_parni(3);
binf.bmiHeader.biPlanes = 1;
binf.bmiHeader.biBitCount = 24;
binf.bmiHeader.biCompression = BI_RGB;
binf.bmiHeader.biSizeImage = 0;
binf.bmiHeader.biClrUsed = 0;
binf.bmiHeader.biClrImportant = 0;
hb_retl( capSetVideoFormat(hCapWnd, &binf, sizeof(BITMAPINFO)) );

}

#pragma ENDDUMP

Использовать :

 цитата:
capSetVideoFormat(This.WebCam_1.Handle, 640, 480)



Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6770
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 19.03.18 21:55. Заголовок: gfilatov2002 Спасиб..


gfilatov2002
Спасибо

Странный меседж получил во время сборки
Warning W8019 demo.prg 784: Code has no effect in function HB_FUN_CAPSETVIDEOFORMAT

Спасибо: 0 
Профиль
gfilatov2002
moderator




Пост N: 1255
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 19.03.18 22:26. Заголовок: Dima пишет: Warning..


Dima пишет:

 цитата:
Warning W8019


Просто добавь подавление этого предупреждения;

 цитата:
#pragma BEGINDUMP

#include <hbapi.h>
#include <windows.h>
#include <vfw.h>

#if defined( __BORLANDC__ )
#pragma warn -use /* unused var */
#pragma warn -eff /* no effect */
#endif
...



Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6790
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 28.03.18 09:04. Заголовок: Поменяли вебкамеру н..


Поменяли вебкамеру на Logitech c920 , разрешение у нее конечно приличное по сравнению c270.
Поменял разрешение с помощью capSetVideoFormat на 2304 x 1536 и оба примера WEBCAM и WEBCAM_2
начали жутко тормозить , когда иногда удается нажать кнопку снять капчу , то картинка реально
нормальная , правда размер в BMP (если) , то почти 11 метров )))
Попробовал фокус с https://github.com/michael4jonas/capcam , снимает норм и тормозов таких нет.
Запускал командой capcam.exe 0 -r18 -fjpg -odd2.jpg
Где r18 ( 18: 2304 x 1536)

PS
Что то не пруха с этой камерой ))


Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6791
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 28.03.18 15:44. Заголовок: Dima пишет: Поменял..


Dima пишет:

 цитата:
Поменял разрешение с помощью capSetVideoFormat


Кажись этого и не надо было делать так как тормоза.......
А надо юзать capCaptureSetSetup (а может и нет) , но понятно что с её написанием ни кто не поможет :)
Хотелось бы что б видео как отображалось так и отображается а вот что бы Капча снялась с
нужным разрешением и не 640 на 480 (и не преобразованное из 640 на 480 в большее)

Спасибо: 0 
Профиль
Haz
moderator


Пост N: 1219
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 28.03.18 16:38. Заголовок: Dima пишет: о понят..


Dima пишет:

 цитата:
о понятно что с её написанием ни кто не поможет


Ну прям и никто
Сюда глянь http://forums.fivetechsupport.com/viewtopic.php?t=5695
там есть это и многое другое
 
HB_FUNC( CAPCAPTURESETSETUP )
{
CAPTUREPARMS Capture;
hb_retl( capCaptureSetSetup( (HWND) hb_parnl( 1 ), &Capture, sizeof( CAPTUREPARMS ) ));
}



Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5790
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 29.03.18 14:47. Заголовок: Использую функцию из..


Использую функцию из МиниГуи CreateFolder(). Проблем не было.
Но под работой Win2008 Server не удаётся создать папку для пользователя.
Как получить код ошибки для этой функции ?
Или нужно делать старый клиперовский вариант MakeDir(), где есть обработка ошибок.
Или можно использовать DosError() и всё ?
Мне просто проверить негде такую ситуацию.


Спасибо: 0 
Профиль
PSP
постоянный участник


Пост N: 1393
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 29.03.18 15:22. Заголовок: Andrey пишет: под р..


Andrey пишет:

 цитата:
под работой Win2008 Server не удаётся создать папку для пользователя


Где пытаешься создать папку?

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5792
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 29.03.18 15:44. Заголовок: PSP пишет: Где пыта..


PSP пишет:

 цитата:
Где пытаешься создать папку?



Функция GetUserTempFolder()
по пути C:\Users\ЮЗЕР\AppData\Local\Temp
У всех нормально, а у этого сервера ошибка - папку не создаёт !

Спасибо: 0 
Профиль
Pasha
Администратор




Пост N: 3710
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 29.03.18 15:44. Заголовок: Наверное надо сделат..


Наверное надо сделать обертку для GetLastError()
Примерно так:

HB_FUNC( GETLASTERROR ) 
{
hb_retnl( GetLastError() );
}


Спасибо: 0 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 10
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет