Ir para conteúdo
Fórum Script Brasil

Jhonas

Monitores
  • Total de itens

    9.657
  • Registro em

Tudo que Jhonas postou

  1. qual é a versão do seu delphi ?
  2. ok amigo... eu utilizo esse componente sem problemas Acredito que a linha onde escolho a webcam é esta SendMessage(hWndC, WM_CAP_DRIVER_CONNECT, 0, 0); realmente é nessa linha que voce escolhe a webcam SendMessage(mCapHwnd, WM_CAP_CONNECT, DeviceID, 0); voce deve pegar o nome ou o numero da webcam instalada e colocar no lugar do parametro DeviceID Para enumerar os webcams, você pode usar o Enumerador de dispositivos do sistema, passando a CLSID_VideoInputDeviceCategory GUID que irá obter todos os dispositivos de captura de vídeo. exemplo {$APPTYPE CONSOLE} uses SysUtils, Windows, ActiveX, DirectShow9, ComObj; procedure EnumerateVideoInputDevices; const IID_IPropertyBag : TGUID = '{55272A00-42CB-11CE-8135-00AA004BB851}'; var LDevEnum : ICreateDevEnum; ppEnumMoniker : IEnumMoniker; pceltFetched : ULONG; Moniker : IMoniker; PropBag : IPropertyBag; pvar : olevariant; hr : HRESULT; i : integer; begin CocreateInstance(CLSID_SystemDeviceEnum, nil, CLSCTX_INPROC, IID_ICreateDevEnum, LDevEnum); hr := LDevEnum.CreateClassEnumerator(CLSID_VideoInputDeviceCategory, ppEnumMoniker, 0); if (hr = S_OK) then begin while(ppEnumMoniker.Next(1, Moniker, @pceltFetched) = S_OK) do begin Moniker.BindToStorage(nil, nil, IID_IPropertyBag, PropBag); if PropBag.Read('Description', pvar, nil) = S_OK then Writeln(Format('Description %s',[String(pvar)])); if PropBag.Read('FriendlyName', pvar, nil) = S_OK then Writeln(Format('Friendly Name %s',[String(pvar)])); if PropBag.Read('DevicePath', pvar, nil) = S_OK then Writeln(Format('Device Path %s',[String(pvar)])); if PropBag.Read('CLSID', pvar, nil) = S_OK then Writeln(Format('CLSID %s',[String(pvar)])); PropBag := nil; Moniker := nil; end; end; ppEnumMoniker :=nil; LDevEnum :=nil; end; begin try CoInitialize(nil); try EnumerateVideoInputDevices; finally CoUninitialize; end; except on E:EOleException do Writeln(Format('EOleException %s %x', [E.Message,E.ErrorCode])); on E:Exception do Writeln(E.Classname, ':', E.Message); end; Writeln('Press Enter to exit'); Readln; end. =============================================================================== outro exemplo util que voce podera usar unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Panel1: TPanel; SaveDialog1: TSaveDialog; Panel2: TPanel; OpenVideo: TButton; CloseVideo: TButton; SaveBMP: TButton; StartAVI: TButton; StopAVI: TButton; procedure FormCreate(Sender: TObject); procedure OpenVideoClick(Sender: TObject); procedure CloseVideoClick(Sender: TObject); procedure SaveBMPClick(Sender: TObject); procedure StartAVIClick(Sender: TObject); procedure StopAVIClick(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private hWndC : THandle; CapturingAVI : bool; { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$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.FormCreate(Sender: TObject); begin CapturingAVI := false; hWndC := 0; SaveDialog1.Options := [ofHideReadOnly, ofNoChangeDir, ofPathMustExist] end; procedure TForm1.OpenVideoClick(Sender: TObject); begin hWndC := capCreateCaptureWindowA('My Own Capture Window', WS_CHILD or WS_VISIBLE , Panel1.Left, Panel1.Top, Panel1.Width, Panel1.Height, Form1.Handle, 0); if hWndC <> 0 then 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_SEQUENCE_NOFILE, 1, 0); SendMessage(hWndC, WM_CAP_SET_OVERLAY, 1, 0); SendMessage(hWndC, WM_CAP_SET_PREVIEW, 1, 0); OpenVideo.Enabled :=false; end; procedure TForm1.CloseVideoClick(Sender: TObject); begin if hWndC <> 0 then begin SendMessage(hWndC, WM_CAP_DRIVER_DISCONNECT, 0, 0); hWndC := 0; OpenVideo.Enabled :=true; end; end; procedure TForm1.SaveBMPClick(Sender: TObject); begin if hWndC <> 0 then begin SaveDialog1.DefaultExt := 'bmp'; SaveDialog1.Filter := 'Bitmap files (*.bmp)|*.bmp'; if SaveDialog1.Execute then SendMessage(hWndC, WM_CAP_SAVEDIB, 0, longint(pchar(SaveDialog1.FileName))); end; end; procedure TForm1.StartAVIClick(Sender: TObject); begin if hWndC <> 0 then begin SaveDialog1.DefaultExt := 'avi'; SaveDialog1.Filter := 'AVI files (*.avi)|*.avi'; if SaveDialog1.Execute then begin CapturingAVI := true; SendMessage(hWndC, WM_CAP_FILE_SET_CAPTURE_FILEA, 0, Longint(pchar(SaveDialog1.FileName))); SendMessage(hWndC, WM_CAP_SEQUENCE, 0, 0); end; end; end; procedure TForm1.StopAVIClick(Sender: TObject); begin if hWndC <> 0 then begin SendMessage(hWndC, WM_CAP_STOP, 0, 0); CapturingAVI := false; end; end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin CloseVideoClick(Sender); end; end. abraço
  3. então Picuuai, não tenho como acessar a pagina seguinte do site para poder fazer alguns testes... se voce puder fazer isso, faça como lhe falei ... veja o código fonte da pagina e compare os campos da pagina do login e senha com os campos da pagina seguinte .. veja se existe algum comando em php ou algum comando de redirecionamento para outra parte do código já vi outros softwares preencher estes campos...então é possível.... a qual software voce se refere ?
  4. sugestão mais pratica http://www.anunico.com.br/anuncio-de/placa_de_captura_gv_800_p_16_cameras_120_fps-844559.html mas se quer algo para usar com o delphi, veja o componente TVideoGrabber http://vlc-undf-codec-vlc.windows.novellshareware.com/info/tvideograbber-delphi-video-sdk.html download do componente -- existe versão gratuita desse componente mas com limitações de recursos http://www.google.com.br/search?q=componente+videograbber+delphi&hl=pt&gbv=2&prmd=ivns&source=lnms&sa=X&ei=Tc49U8v4BObE0gGwuoCoAg&ved=0CAQQ_AU OBS: No menu desse componente voce pode escolher qual a webcam que quer visualizar e que esteja conectada ao pc tem uma serie de recursos para esse componente, mas voce pode usar somente o que for necessario exemplo : Demo http://www.datastead.com/_releases/vidgrab_8.8.4.1_MainDemo.zip abraço
  5. verifique o caminho do banco de dados no arquivo My.ini e veja se as dlls do MYSQL estão na pasta System32 do windows abraço
  6. Obs. O login inicial consigo fazer normalmente, onde se preenche o cnpj, cpf e codigo de acesso que é um form conforme codigo. ou seja ... voce consegue preencer os campos da pagina do login e senha mas não da pagina seguinte ... é isso ? preciso ver o código da pagina após ter feito o login e senha .... no menu < Exibir > clique na opção < Código Fonte > OBS: algumas paginas da receita possuem um bloqueador de scripts, justamente para não permitir o uso de programas desse tipo ... justamente por questão de segurança abraço
  7. tente objCamand.Parameters.AddWithValue("@NOME", "Valor atribuído..."); objCamand.ExecuteNonQuery(); objConnection.Close() objCommand.Dispose() UpdateRecord = True abraço
  8. veja essa apostila http://www.google.com.br/url?q=http://paginas.fe.up.pt/~tavares/ensino/CFAC/Downloads/Apontamentos/AutoLISP%2520VI.pdf&sa=U&ei=_JM9U42OM8HhsATIsYGwBA&ved=0CCEQFjAA&usg=AFQjCNFR46aJ8Hoy9ETyYRG50ytWUtP7BA abraço
  9. amigo, veja essa apostila a partir da pagina 25 http://www.google.com.br/url?q=http://www.ipb.pt/~jpcoelho/downloads/TITD_.PDF&sa=U&ei=I489U43kArG1sATW8oD4Aw&ved=0CD8QFjAF&usg=AFQjCNHob3BBjVxIgSmiCjzVEtbfG8slbg abraço
  10. Como eu faço para fazer o tal update e o cliente quando abrir o programa aparece aquela velha msg dizendo que tem uma versão nova disponível. primeiro seu programa deve fazer conexão com algum servidor onde esteja uma versão do seu programa depois o seu programa devera verificar a data do programa executavel do servidor com a data do programa executavel da maquina do cliente se nessa comparação , a data do executavel do cliente for menor que a data do executavel do servidor, então voce emite uma mensagem de alerta dizendo que existe uma nova atualização do software ou faz isso automaticamente atraves de um download do servidor pesquise na net ... existem exemplos sobre como fazer essa atualização abraço
  11. amigo, tem exemplos nesses links que vão lhe ajudar http://social.msdn.microsoft.com/Forums/pt-BR/10b41250-0014-4732-b8ac-9d4de3c59dbf/mover-vrios-arquivos-de-um-diretrio-para-outro-em-c?forum=vscsharppt http://www.rafaelsussel.mhx.com.br/wordpress/?p=25 abraço
  12. PreencheCampos(WebBrowser1,'PA','02/2014'); ok amigo ... veja que para preencher os campos com esses dados, deve estar aparecendo no TWebbrowser a pagina do site me passe o endereço da pagina, para verificar o seu conteudo abraço
  13. amigo, se voce esta usando frames, a maneira de preencher os dados do twebbrowser é parecida com esse exemplo http://blog.fullsig.com.br/?p=25 esse exemplo tambem funciona http://www.planetadelphi.com.br/dica/7498/-twebbrowser-como-preencher-campo-text-do-html- nesse link vai encontrar uma explicação mais facil para executar esse procedmento http://robsonmagno.wordpress.com/2011/12/16/manipular-web-forms-usando-o-twebbrowser/ Faça algumas comparações de códigos e tente fazer alguns testes para ver o resultado abraço
  14. amigo, não tenho certeza, mas acho que existe uma resposta em um dos posts sobre webbrowser faça uma pesquisa no forum pela palavra webbrowser, caso não encontre, informe .... abraço
  15. Variant or safe array is locked Como corrigir o erro Variant or safe array is locked que é apresentado no Microsoft© Windows 7® Geralmente este problema no Microsoft© Windows 7® está relacionado ao arquivo Midas.dll que pode estar corrompido ou desatualizada. Para corrigir, você deve substituir o arquivo atual pela versão mais nova. Baixe o arquivo pelo link abaixo: http://www.4shared.com/rar/hxEMlU76/MIDAS_DLL_ResolveArray.html ou declarar no uses midaslib ou distribuir a dll midas.dll junto com o executável abraço
  16. Jhonas

    shockwave

    retire essa linha e tente novamente <?xml version="1.0" encoding="utf-8"?> abraço
  17. voce tem que especificar o formato do numero no excel e não no delphi abraço
  18. outra opção http://www.fciencias.com/2012/12/26/insira-formulas-nos-seus-documentos-facilmente/ existe tambem componente do Latex para o delphi http://www.google.com.br/search?q=latex+component+delphi&hl=pt&gbv=2&o que=latex+delphi&gs_l=heirloom-serp.1.1.0i7i30l2j0i30l2.127963.128602.0.134155.5.5.0.0.0.0.1259.4240.5-2j1j2.5.0....0...1ac.1.34.heirloom-serp..4.1.522.FYpZ3AWRBuc abraço
  19. veja como http://www.google.com.br/search?q=treeview+dbgrid+delphi&hl=pt&gbv=2&o que=treevi+dbgrid+delphi&gs_l=heirloom-serp.3.0.0i7i30.152935.154567.0.158037.6.6.0.0.0.0.230.877.2j3j1.6.0....0...1ac.1.34.heirloom-serp..2.4.490.rcKwRbWWoE4 abraço
  20. mas tem sim .... pasta Demos > Quickrpt > Qr2 ou Qr3 ou então da pesquisada na net sobre relatorio agrupado http://www.google.com.br/search?hl=pt&source=hp&q=relatorio+agrupado+quickreport&gbv=2&o que=relatorio+agrupado+quick&gs_l=heirloom-hp.1.0.0.1694.14373.0.16371.24.22.0.2.2.0.409.3364.8j8j3j2j1.22.0....0...1ac.1.34.heirloom-hp..8.16.1457.ciUTaI_wG2k abraço
  21. se isso vai aparecer somente uma unica vez na inicialização do programa, voce faz como mencionei no outro post abraço
  22. Jhonas

    Componente Indy

    coloque o codigo que voce esta usando para fazer o upload
  23. Jhonas

    Componente Indy

    Porém ela para no evento onWordEnd e não sai de maneira alguma. na verdade sai sim ...o evento onWordEnd tem que esperar até que a transferencia do arquivo esteja concluida para ser executado ( isso depende muito da velocidade da internet ) abraço
  24. amigo, o erro esta bem explicito TDBXerror Exceção no módulo SGO.exe em 00370746 Erro DBX: driver não pôde ser inicializado corretamente. Biblioteca cliente pode estar faltando, não instalada corretamente, ou versão errada, ou o driver pode estar faltando no caminho do sistema. na maquina cliente algumas dlls do firebird tem que ser copiadas ou instaladas ( instalar o firebird no cliente ) veja http://osdir.com/ml/db.firebase.portuguese/2003-08/msg01038.html http://www.google.com.br/url?q=ftp://ftp.brandaodutra.com.br/pub/diversos/server1/Mozilla/Firebird/CFLP_O027.PDF&sa=U&ei=FecLU_v1J8iokQe-joGICg&ved=0CFIQFjAI&usg=AFQjCNEEVlylOoNzxgJSoJjbyzZAomPesg abraço
×
×
  • Criar Novo...