Ir para conteúdo
Fórum Script Brasil
  • 0

Web Cam


José Luiz

Pergunta

Pesquisando no Fórum, encontrei um programa para gerenciamento da WebCam.

O programa funciona perfeitamente, porém não sei como desligar a câmera.

Eu ligo a WebCam ao entrar no Form, e gostaria de desligá-la ao sair.

Como faço para desligar a WebCam ao fechar o Form ?

Rotina utilizada.

{$R *.dfm}

const WM_CAP_START  = WM_USER          ;
const WM_CAP_STOP = WM_CAP_START + 68;
const WM_CAP_DRIVER_CONNECT = WM_CAP_START + 10;
const WM_CAP_DRIVER_DISCONNECT = WM_CAP_START + 11;
const WM_CAP_SAVEDIB  = WM_CAP_START + 25;
const WM_CAP_GRAB_FRAME = WM_CAP_START + 60;
const WM_CAP_SEQUENCE = WM_CAP_START + 62;
const WM_CAP_FILE_SET_CAPTURE_FILEA  = WM_CAP_START + 20;
const WM_CAP_SEQUENCE_NOFILE  = WM_CAP_START + 63;
const WM_CAP_SET_OVERLAY  = WM_CAP_START + 51;
const WM_CAP_SET_PREVIEW  = WM_CAP_START + 50;
const WM_CAP_SET_CALLBACK_VIDEOSTREAM = WM_CAP_START +  6;
const WM_CAP_SET_CALLBACK_ERROR  = WM_CAP_START +  2;
const WM_CAP_SET_CALLBACK_STATUSA = WM_CAP_START +  3;
const WM_CAP_SET_CALLBACK_FRAME  = WM_CAP_START +  5;
const WM_CAP_SET_SCALE = WM_CAP_START + 53;
const WM_CAP_SET_PREVIEWRATE = WM_CAP_START + 52;

function capCreateCaptureWindowA ( lpszWindowName : PCHAR; dwStyle : longint; x : integer; y : integer;
         nWidth : integer; nHeight : integer; ParentWin : HWND; nId : integer ) : HWND; STDCALL; EXTERNAL 'AVICAP32.DLL';


procedure TForm1.FormShow(Sender: TObject);
begin

  hWndC := capCreateCaptureWindowA ( 'WebCam', WS_CHILD or WS_VISIBLE, Panel10.Left, Panel10.Top, 320, 240, Form1.Handle, 0 );

  if hWndC <> 0 then begin
    SendMessage ( hWndC, WM_CAP_SET_CALLBACK_VIDEOSTREAM,  0, 0 );
    SendMessage ( hWndC, WM_CAP_SET_CALLBACK_ERROR      ,  0, 0 );
    SendMessage ( hWndC, WM_CAP_SET_CALLBACK_STATUSA    ,  0, 0 );
    SendMessage ( hWndC, WM_CAP_DRIVER_CONNECT          ,  0, 0 );
    SendMessage ( hWndC, WM_CAP_SET_SCALE               ,  1, 0 );
    SendMessage ( hWndC, WM_CAP_SET_PREVIEWRATE         , 66, 0 );
    SendMessage ( hWndC, WM_CAP_SET_OVERLAY             ,  1, 0 );
    SendMessage ( hWndC, WM_CAP_SET_PREVIEW             ,  1, 0 );
  end;

Se eu fecho o From sem desligar a WebCam, ao entrar novamente, dá erro.

Obrigado,

José Luiz.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

coloque o código completo, para poder analisar e te ajudar

outra sugestão:

use esse componente

http://mrbool.devmedia.com.br/Novo/Revista...adriano-cam.zip

e use esse código

procedure TForm1.Button1Click(Sender: TObject);
var
  p : ^TTabImage;
begin
  // ativar a camera
  Camera1.Actif:=True;
  New(p);
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  p : ^TTabImage;
begin
  // desativar a camera
  Camera1.Actif:=False;
  New(p);
end;

Dica do forum ActiveDelphi

http://www.activedelphi.com.br/forum/viewt...437c4b01c18d6ac

abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,9k
×
×
  • Criar Novo...