-
Total de itens
9.657 -
Registro em
Tudo que Jhonas postou
-
qual é a versão do seu delphi ?
-
Como escolher uma webcam entre várias?
pergunta respondeu ao Gabriel Cabral de Jhonas em Delphi, Kylix
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 -
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 ?
-
Como escolher uma webcam entre várias?
pergunta respondeu ao Gabriel Cabral de Jhonas em Delphi, Kylix
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 -
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
-
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
-
Mysql + C# - Gravando apenas NULL
pergunta respondeu ao jesseucl de Jhonas em Outras Linguagens de Programação
tente objCamand.Parameters.AddWithValue("@NOME", "Valor atribuído..."); objCamand.ExecuteNonQuery(); objConnection.Close() objCommand.Dispose() UpdateRecord = True abraço -
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
-
MATLAB - criar uma função com uma série num m file
pergunta respondeu ao jocamc de Jhonas em Outras Linguagens de Programação
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 -
Atualização de software
pergunta respondeu ao Jeferson21 de Jhonas em Outras Linguagens de Programação
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 -
Criar uma cópia de todos os arquivos .txt dos usúarios? - CSharp
pergunta respondeu ao Radicalzinho de Jhonas em Outras Linguagens de Programação
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 -
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
-
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
-
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
-
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
-
retire essa linha e tente novamente <?xml version="1.0" encoding="utf-8"?> abraço
-
voce tem que especificar o formato do numero no excel e não no delphi abraço
-
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
-
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
- 1 resposta
-
- DBGrid
- Agrupamento
-
(e %d mais)
Tags:
-
Relatorio de contas a pagar com plano de contas quickreport
pergunta respondeu ao nicolasbraz de Jhonas em Delphi, Kylix
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 -
se isso vai aparecer somente uma unica vez na inicialização do programa, voce faz como mencionei no outro post abraço
-
(Resolvido) Executável Compilado em Delphi XE3, win 7 64 bits
pergunta respondeu ao Recife de Jhonas em Delphi, Kylix
ok... qualquer duvida post ai abraço -
coloque o codigo que voce esta usando para fazer o upload
-
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
-
(Resolvido) Executável Compilado em Delphi XE3, win 7 64 bits
pergunta respondeu ao Recife de Jhonas em Delphi, Kylix
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