[Dica] Rodar webcam utilizando forms

Dicas do Oracle Forms Builder - Blocos, Itens, LOV, Canvas, Triggers, comandos, PLL, d2kwutil, FMB, Alert, menus, etc
Responder
brunoornilo@ig.com.br
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 2
Registrado em: Seg, 28 Jul 2008 6:03 pm
Localização: Rio de Janeiro

Pessoal,

Em varios posts verifiquei que a maioria esta encontrando dificuldades em como resolver.. e meio chato de explicar... mas se resume basicamente assim..

1 - tera que ser instalando uma api chamada videocapdemosetup.exe

2 - depois de ter realizado a instalacao devera procurar a dll ( d2kwut60.dll ) e jogar o arquivo na pasta c:/oracle/oradev/bin

3 - criar no forms um campo tipo ocx e link com a classe videocap control object

4 - esse comando abaixo e pra executar a webcam

Selecionar tudo

declare 
	numero number;
	height number;
	width  number;
begin	
	
	COMMIT_FORM;
	
  set_block_property('pessoas', default_where, 'id_pessoa ='||:pessoas.id_pessoa);  
  go_block('pessoas');
	execute_query;

	if get_item_property('controle.activex_control1117',visible) = 'FALSE' then
		
		set_item_property('controle.activex_control1117',visible,property_true);
	  go_block('controle');
	  :parameter.p_camera :=:item('controle.activex_control1117').interface;
	  numero := videocap_dvideocap.ole_Start(:parameter.p_camera);
	  
	end if;
	
	if get_item_property('pessoas.foto_camera',visible) = 'TRUE' then
		
	  set_item_property('pessoas.foto_camera',visible,property_false);
	  
	end if;
end;
5 - esse passo sera para tirar foto....

Selecionar tudo

declare 
	salva number;
begin	
	
	select caminho||'\'||:pessoas.id_pessoa||'.jpg'
	into :pessoas.foto
	from usrpop.por_diretorio;
  --:pessoas.foto := 'C:\'||:pessoas.id_pessoa||'.jpg'; 
	
	salva:= VIDEOCAP_DVideoCap.SnapShotJPEG (:parameter.p_camera, :pessoas.foto ,'90');
	VIDEOCAP_DVideoCap.Stop(:parameter.p_camera);
	
	READ_IMAGE_FILE(:pessoas.foto,'JPG','pessoas.foto_camera');
	
	if get_item_property('pessoas.foto_camera',visible) = 'FALSE' then
		set_item_property('pessoas.foto_camera',visible,property_true);
	end if;
	
	if get_item_property('controle.ACTIVEX_CONTROL1117',visible) = 'TRUE' then
		set_item_property('controle.ACTIVEX_CONTROL1117',visible,property_false);
	end if;
	commit_form;
  go_block('pessoas');
	execute_query;
	set_block_property('PESSOAS', default_where, '');
	
	commit;
end;

Bem pessoal, quem tiver duvidas ainda em resolver o problema eu passo o forms como exemplo..
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

rodrigomesquita
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 5
Registrado em: Seg, 16 Jun 2008 3:29 pm
Localização: Rio de Janeiro RJ
Consultor PL/SQL

está show Bruno...

já tinha dado uma olhada nesse teu exemplo e já estou implementando
Trevisolli
Moderador
Moderador
Mensagens: 2016
Registrado em: Qua, 12 Jan 2005 3:25 pm
Localização: Araraquara - SP
Abraço,

Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP

Então, segui os procedimentos, porém, na tela, o objeto OCX, fica preto e não ativa a CAM.

Estou dando uma olhada no que pode ser (dll na pasta, etc).

Se alguém o tiver funcionando, favor postar pra gente.
sergiomichelss
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 7
Registrado em: Sex, 05 Dez 2008 7:50 am
Localização: Sapiranga - RS
Contato:
Att,
Sérgio Michels
www.insoft4.com.br

Pessoal, vou reviver este tópico, talvez vocês tenham resolvidos os problemas.

Baixei o exemplo e tentei rodar, mas a demo enviada tinha expirado. Então fui no site, me cadastrei e baixei a nova versão da VideoCap, porém a mesma não funciona, como o colega acima mencionou fica tudo preto e não ativa a webcam.

Alguém tem uma solução funcional?
Pablo
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 190
Registrado em: Sex, 27 Out 2006 11:12 am
Localização: 88350000
Pablo

Galera, lí neste post que necessita utilizar o "ocx"...bom, no caso do forms 4.5 este carinha não existe... será que existe alguma possibilidade de disparar a web cam no forms 4.5?? alguém tem alguma idéia??

abraços
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

DLL com ORA_FFI será que não dá?
Pablo
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 190
Registrado em: Sex, 27 Out 2006 11:12 am
Localização: 88350000
Pablo

Caro Diegolenhardt... nunca tentei...vou ver como funciona e depois posto aqui...
obrigado ai brother
Pablo
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 190
Registrado em: Sex, 27 Out 2006 11:12 am
Localização: 88350000
Pablo

Grande Diegolenhardt....
cara,,,dei uma espiada no ORA_FFI...mas, acho q não é o que eu quero...preciso abrir a imagem da câmera no forms para ver o "close"...o usuário vê c a imagem está boa e clica no botão para capturar a imagem..o local para ser salvo (e o nome do arquivo) vão ser definidos pelo programa (o nome é o d menos utilizando uma sequence)...isso tudo gostaria de fazer no forms 4.5...
Será q alguém já precisou fazer tamanho "xunxo"??

Abraços turma
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

ah você quer ver a imagem no forms, ai a DLL não vai resolver mesmo.. acho que não da hein cara...

e se você fizer um programa em outra linguagem, e deixar uma caixinha always on top com a imagem da webcam, ai o cara vê a aplicacao do forms e a sua com a imagem, ai um botao capturar no forms, enviaria nesse caso um sinal para o programa em delphi, via arquivo talvez, via DLL, que esse então fizesse a captura da imagem, salvasse em um local, e o forms iria lá e faria a leitura ...

uma ideota.

=}
Pablo
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 190
Registrado em: Sex, 27 Out 2006 11:12 am
Localização: 88350000
Pablo

Cara...a idéia é show...mas, não queria implementar outros programas dentro do forms....bom, vou ver se consigo fazer no forms 6i e ver o que vai dar...hehehe...mas, valeu pela ajuda brother.

t+
Pablo
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 190
Registrado em: Sex, 27 Out 2006 11:12 am
Localização: 88350000
Pablo

Salve turma...utilizei o exemplo do dr_gori...porém...a tela fica preta (como a reclamação dos outros post)...pessoal, alguém conseguiu corrigir isso??

abraços turma
Pablo
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 190
Registrado em: Sex, 27 Out 2006 11:12 am
Localização: 88350000
Pablo

E ai turma...fucei em um monte de coisas aqui e não conseguir fazer com que a webcam mostrasse no OCX...alguém ai tem alguma luz?? a única luz que eu ví foi um trem vindo na minha direção :D...Sou novato no Forms6i

abraços
Pablo
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 190
Registrado em: Sex, 27 Out 2006 11:12 am
Localização: 88350000
Pablo

Boa tarde Turma,,,desculpa novamente em torrar a paciência com este mesmo post....mas ainda estou pendurado neste problema em que o OCX fica com a tela preta...
bom, baixei o novo instalador do videocapprosetup coloquei a dll até onde não devia...hehehe...mas, nada adianta... no comando
:parameter.p_camera :=:item('controle.activex').interface;
numero := videocap_dvideocap.ole_Start(:parameter.p_camera); (conforme o exemplo do Bruno) está dando o erro OLE object not defined for ACTIVEX in the current record.

E ai turma...algum mestre pode me apontar a direção?

abraços
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

cara, pega essas dlls, e copia no diretorio bin do forms,
onde tem o ifrun60.exe
no c:\windows\system32,
as vezes é algum rolo assim....
talvez tem que registrar a DLL também...
Pablo
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 190
Registrado em: Sex, 27 Out 2006 11:12 am
Localização: 88350000
Pablo

Ow brother,,,legal...mas,,,já coloquei nestes lugares... só não fiz a parte que você disse de "registrar" a dll....o que você quiz dizer com isso??
Outra coisa que estou fazendo...é no property palette, OLE CLASS do item ACTIVEX, estou apontando para VIDEOCAP.VideoCapCtrl.1

t+
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

procura por regsvr32,
mexi uma vez pouca coisa com isso no forms cara,

tenta ver ai...

regsvr32 c:\PPMD\PPMDForms.ocx

exemplo que peguei no google...
Pablo
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 190
Registrado em: Sex, 27 Out 2006 11:12 am
Localização: 88350000
Pablo

Grande Diego...
bixo, fiz o que você sugeriu...não registrou a DLL, mas, o comando carregou o arquivo...mesmo assim não funcionou...continua o erro "FRM-41344: OLE object not defined for "nome do activex" in the current record"

bom, andei fuçando um pouco mais,,,no comando para acionar a webcam...tenho o comando :parameter.p_camera :=:item('controle.activex').interface;
numero := videocap_dvideocap.ole_Start(:parameter.p_camera)
bom, me parece que o comando item('bloco.item').interface está retornando valor nulo... estou pesquisando para ver o que o comando INTERFACE retorna,,,mas não estou obtendo sucesso...alguém tem alguma dica??
estou tentando implementar essa bomba,,,mas, estou vendo q se for fazer em Delphi é bem(mass bemmm) mais fácil...

Abraços
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Majestic-12 [Bot] e 7 visitantes