Ir para conteúdo
Fórum Script Brasil

Paulo Nobre

Membros
  • Total de itens

    717
  • Registro em

  • Última visita

Tudo que Paulo Nobre postou

  1. Thales, você é f***. Deu certo, vou fazer o mesmo para o gif e depois partir para cima do programa para adaptar. Agora vem a parte fácil, mas chata, que é a perfumaria. Colocar opção para o usuário capturar com seta ou não etc... PS: Acabei achando sua MP e mandei uma para você. Tinha escrito uma resposta mas acho que não chegou pois na hora meu internet congelou. Coisas do ti bill. Aí reescrevi uma outra. Não sei se recebeu. Acho que o negócio tá meio doido. Não vao poder dizer que estou fazendo flood, pois isto é apenas um complemento, não é? O sério estáí em cima não é? estou meio veio para tomar bronca!
  2. Funcionou Thales, Só que como sabe tenho a opção de salvar a imagem em JPEG e GIF. Procedure TfrmPrincipal.CapturarSalvarJPEG(Filename:TFilename); Var JPEG:TJPEGImage; begin Try //Primeiro você cria o JPEG: JPEG := TJPEGImage.Create; //Depois você carrega o bitmap do Image pelo Clipboard: Image1.Picture.Bitmap.LoadFromClipboardFormat(CF_BitMap,Clipboard.GetAsHandle(CF_BitMap),0); //Depois você assinala o JPEG a partir do Bitmap: JPEG.Assign(Image1.Picture.Bitmap); //Depois você salva o JPEG: JPEG.SaveToFile(FileName); JPEG.Free; except begin Messagebox(0,'Se você está capturando parte da tela, ATENÇÃO!!! '+#13+'É necessário ficar com a tecla F3 apertada para capturar parte da tela. '+#13+ 'Por favor leia as dicas do programa FLASH. ','ERRO AO CAPTURAR',MB_IconStop); reg.RootKey:=HKEY_LOCAL_MACHINE; reg.OpenKey('SOFTWARE\NOBRE INFORMÁTICA\FLASH',True); Image1.Picture.LoadFromFile(reg.readString('Último Shot')); reg.CloseKey; Abort; end; end; end; //A procedure abaixo serve para salvar o desktop mostrar e salvar //gif no diretório escolhido. Procedure TfrmPrincipal.CapturarSalvarGIF(Filename:TFilename); Var Bitmap: TBitmap; Gif:TGifImage; begin try begin Bitmap := TBitmap.Create; Gif:= TGifImage.Create; Image1.Picture.Bitmap.LoadFromClipboardFormat(CF_BitMap,Clipboard.GetAsHandle(CF_BitMap),0); BitmapToGif(Bitmap,Gif); Gif.Assign(Image1.Picture.Bitmap); Gif.SaveToFile(FileName); Bitmap.Free; Gif.Free; end; except begin Messagebox(0,'Se você está capturando parte da tela, ATENÇÃO!!! '+#13+'É necessário ficar com a tecla F3 apertada para capturar parte da tela. '+#13+ 'Por favor leia as dicas do programa FLASH. ','ERRO AO CAPTURAR',MB_IconStop); reg.RootKey:=HKEY_LOCAL_MACHINE; reg.OpenKey('SOFTWARE\NOBRE INFORMÁTICA\FLASH',True); Image1.Picture.LoadFromFile(reg.readString('Último Shot')); reg.CloseKey; Abort; end; end; end; e Procedure TfrmPrincipal.CapturarSalvarGIF(Filename:TFilename); Var Bitmap: TBitmap; Gif:TGifImage; begin try begin Bitmap := TBitmap.Create; Gif:= TGifImage.Create; Image1.Picture.Bitmap.LoadFromClipboardFormat(CF_BitMap,Clipboard.GetAsHandle(CF_BitMap),0); BitmapToGif(Bitmap,Gif); Gif.Assign(Image1.Picture.Bitmap); Gif.SaveToFile(FileName); Bitmap.Free; Gif.Free; end; except begin Messagebox(0,'Se você está capturando parte da tela, ATENÇÃO!!! '+#13+'É necessário ficar com a tecla F3 apertada para capturar parte da tela. '+#13+ 'Por favor leia as dicas do programa FLASH. ','ERRO AO CAPTURAR',MB_IconStop); reg.RootKey:=HKEY_LOCAL_MACHINE; reg.OpenKey('SOFTWARE\NOBRE INFORMÁTICA\FLASH',True); Image1.Picture.LoadFromFile(reg.readString('Último Shot')); reg.CloseKey; Abort; end; end; end; DrawIconEx(Bmp.canvas.Handle,pt.x-rt.left,pt.y-rt.top,GetCursor,0,0,0,0,DI_NORMAL or DI_DEFAULTSIZE); Poderei adaptar o código acima? tentei jpeg.canvas.handle e deu errado.
  3. FileName é a variável destino do timer. Lembra o timer do post anterior: procedure TfrmPrincipal.Timer1Timer(Sender: TObject); Var Destino:String; Numero:Integer; ScreensSalvos: Integer; begin Timer1.Enabled:=False; reg.RootKey:=HKEY_LOCAL_MACHINE; reg.OpenKey('SOFTWARE\NOBRE INFORMÁTICA\FLASH',FALSE); Numero:= reg.ReadInteger('Número do último screen salvo')+ 1; ScreensSalvos:= reg.ReadInteger('Screens Salvos')+ 1; If reg.ReadString('Formato')= 'BMP' then begin Destino:= reg.ReadString('Diretório de Destino')+'\Flash'+IntToStr(Numero)+'.bmp'; CapturarSalvarBitmap(Destino); end Else If reg.ReadString('Formato')= 'JPEG' then begin Destino:= reg.ReadString('Diretório de Destino')+'\Flash'+IntToStr(Numero)+'.jpeg'; CapturarSalvarJPEG(Destino); end Else If reg.ReadString('Formato')= 'GIF' then begin Destino:= reg.ReadString('Diretório de Destino')+'\Flash'+IntToStr(Numero)+'.gif'; CapturarSalvarGIF(Destino); end; reg.WriteInteger('Número do último screen salvo',Numero); Label2.Caption:= IntToStr(ScreensSalvos); reg.WriteInteger('Screens Salvos',ScreensSalvos); reg.WriteString('Último Shot',Destino); reg.CloseKey; //Manda o form para frente. SetForegroundWindow(handle); end; Tenho este timer pois o usuário pode escolher capturar de tempos em tempos. DE acordo com a escolha nas configuraçoes ele salva com uma terminação num diretório. Claro que não está funcionando, você declara a variavel bmp e passa a variavel Bitmap como parametro para DrawIconEx. Tem como resolver isto? Putz! Eu escreví quase uma edição inteira da folha de São Paulo e você não recebeu! Que m****! Manda direto para o meu email!
  4. DrawIconEx(Bitmap.canvas.Handle,pt.x-rt.left,pt.y-rt.top,GetCursor,0,0,0,0,DI_NORMAL or DI_DEFAULTSIZE); Tirando o bitmap compila mas nada acontece, ou seja não dá erro mas também não desenha o ponteiro. DrawIconEx(canvas.Handle,pt.x-rt.left,pt.y-rt.top,GetCursor,0,0,0,0,DI_NORMAL or DI_DEFAULTSIZE); Procedure TfrmPrincipal.CapturarSalvarBitmap(Filename:TFilename); Var Bmp:TBitmap; rt:trect; pt:Tpoint; begin try Bmp := TBitmap.Create; Bmp.LoadFromClipboardFormat(CF_BitMap, Clipboard.GetAsHandle(CF_Bitmap), 0); GetCursorPos(Pt); GetWindowRect(GetForegroundWindow,Rt); DrawIconEx(Bitmap.canvas.Handle,pt.x-rt.left,pt.y-rt.top,GetCursor,0,0,0,0,DI_NORMAL or DI_DEFAULTSIZE); Image1.Picture.Bitmap.Assign(Bmp); Bmp.SaveToFile(FileName); Bmp.Free; except begin Messagebox(0,'Se você está capturando parte da tela, ATENÇÃO!!! '+#13+'É necessário ficar com a tecla F3 apertada para capturar parte da tela. '+#13+ 'Por favor leia as dicas do programa FLASH. ','ERRO AO CAPTURAR',MB_IconStop); reg.RootKey:=HKEY_LOCAL_MACHINE; reg.OpenKey('SOFTWARE\NOBRE INFORMÁTICA\FLASH',True); Image1.Picture.LoadFromFile(reg.readString('Último Shot')); reg.CloseKey; Abort; end; end; end; PS: mandei uma MP pra você sobre o exe do troca papel. Não recebi nenhuma MP!
  5. Thales, Coloquei aquele código que você forneceu como sugestão dentro do meu Bitmap.LoadFromClipboardFormat(CF_BitMap,Clipboard.GetAsHandle(CF_BitMap),0); GetCursorPos(Pt); GetWindowRect(GetForegroundWindow,Rt); DrawIconEx(Bitmap.canvas.Handle,pt.x-rt.left,pt.y-rt.top,GetCursor,0,0,0,0,DI_NORMAL or DI_DEFAULTSIZE); Bitmap.SaveToFile(FileName); Mas, tá dando erro de "Object or class type requerid" e pior é que a segunda linha de erro diz esperado except ou finally. O erro inicial é para a linha do DrawIconEx. Tem que acrescentar alguma unit?
  6. Acredito que você a encontre no site da Borland.
  7. Thales, Mandei um MP para você, para você me dizer para qual email posso mandar o projeto papel de parede.
  8. Mas deixa eu ver se eu peguei a idéia: O usuário posiciona o mouse numa ponta do retangulo, pressiona uma tecla, arrasta o mouse até a outra ponta do retangulo e depois solta a tecla. é isso? Acertou na mosca Thales. Não me referia a ini's, mas sim a arquivos binários normais, aonde você salvaria as variáveis diretamente. Se você souber algumas técnicas de acesso a arquivos, por exemplo a de montar uma estrutura de fila encadeada dentro do arquivo... Grego, para mim Thales. Um dia, quem sabe, vou chegar a sacar um milésimo do que vocês sabem!! Se quiser, depois que eu implementar a captura do ponteiro do mouse, mando o projeto completo para você. Abraços
  9. Ué, não entendi. Agora os HotKeys estão funcionando mesmo com a janela minimizada? Estão funcionando sim. Observação: Nesse código você está usando um TImage pra puxar do clipboard, mas se a imagem não tiver que aparecer no form é melhor usar apenas um TBitmap. Sempre que a imagem é capturada ela aparece num image. Se o usuário clicar nela tem a oportunidade de abrí-la numa janela maior para ver detalhes. Pergunta: É realmente necessário tantos acessos ao registro? Por que você não usa arquivos normais que ficam junto com o programa, é bem melhor. Tenho mania de fazer uso abundante do registro para armazenar todas as informações do programa. O que você chama de arquivos normais que ficam juntos do programa? Seriam INI. Se for, não tenho hábito de usá-los. Prefiro o registro. Como o usuário faz para determinar qual a área da tela quer capturar quando o modo de captura é 'Parte da Tela'? Quando ele escolhe capturar uma parte da tela, esta opção aciona um timer e além disso a tecla F2 é usada para isto, junto com o mouse. procedure TfrmPrincipal.TimerParteDaTelaTimer(Sender: TObject); Var formato : Word; dados : Cardinal; paleta : HPALETTE; begin TimerParteDaTela.Enabled:= False; try if GetKeyState(VK_F2) < 0 then begin Capturando := True; if X1 = 0 then begin X1 := Mouse.CursorPos.X; Y1 := Mouse.CursorPos.Y; X2 := X1; Y2 := Y1; end else if (X2 <> Mouse.CursorPos.X) or (Y2 <> Mouse.CursorPos.Y) then begin Canv.Rectangle(X1, Y1, X2, Y2); X2 := Mouse.CursorPos.X; Y2 := Mouse.CursorPos.Y; Canv.Rectangle(X1, Y1, X2, Y2); end; end else if Capturando then begin Canv.Rectangle(X1, Y1, X2, Y2); Timer1.Enabled:=True; CopiaTela(Image1.Picture.Bitmap, X1, Y1, X2, Y2); Image1.Picture.SaveToClipBoardFormat(formato, dados, paleta); ClipBoard.SetAsHandle(formato, dados); X1 := 0; Capturando := False; end Else begin //SetSystemCursor(LoadCursor(0,IDC_Cross),OCR_Normal); end; finally TimerParteDaTela.Enabled:= True; end; end; Isto tudo está funcionado redondinho agora. Vou testar ananhã o código que você me passou.
  10. Opa, que Thiago??????????????????!!!!!!!!!!!!!!?????????????????!!!!!!!! OPA, foi mal. Perdão, amigo Thales. Estava digitando com uns colegas me zoando ao meu lado.
  11. Realmente , amigo Thales. O problema é a minha falta de experiência mesmo!! No fim de semana vou tentar, adaptando no meu código. Pois já tenho ele na cabeça. Depois vou reescrever com o seu. Valeu pela força.
  12. Suponho que sim. Tenho a printscreen sendo capturada da seguinte maneira: procedure TfrmPrincipal.WMHotKey (var Msg : TWMHotKey); begin if Msg.HotKey = 500 then begin {== Habilita a tecla Print Screen ==} //Se não colocar cria um looping UnRegisterHotkey( Handle, 500 ); reg.RootKey:=HKEY_LOCAL_MACHINE; reg.OpenKey('SOFTWARE\NOBRE INFORMÁTICA\FLASH',FALSE); If reg.ReadString('Capturar')= 'A tela toda' then begin Clipboard.Clear;//Se não colocar dá erro Keybd_Event(VK_Snapshot,0, 0, 0); reg.CloseKey; {== Desabilita a tecla Print Screen ==} RegisterHotkey( Handle, 500, 0, VK_SNAPSHOT ); end Else If reg.ReadString('Capturar')= 'A janela ativa' then begin Clipboard.Clear;//Se não colocar dá erro Keybd_Event(VK_Snapshot,1, 0, 0); reg.CloseKey; {== Desabilita a tecla Print Screen ==} RegisterHotkey( Handle, 500, 0, VK_SNAPSHOT ); end Else If reg.ReadString('Capturar')= 'Parte da Tela' then begin reg.CloseKey; {== Desabilita a tecla Print Screen ==} //RegisterHotkey( Handle, 400, 0, VK_F3 ); TimerParteDaTela.Enabled:= True; end; Timer1.Enabled:=True;//Aciona a captura end; end; O timer1 acima aciona a captura procedure TfrmPrincipal.Timer1Timer(Sender: TObject); Var Destino:String; Numero:Integer; ScreensSalvos: Integer; begin Timer1.Enabled:=False; reg.RootKey:=HKEY_LOCAL_MACHINE; reg.OpenKey('SOFTWARE\NOBRE INFORMÁTICA\FLASH',FALSE); Numero:= reg.ReadInteger('Número do último screen salvo')+ 1; ScreensSalvos:= reg.ReadInteger('Screens Salvos')+ 1; If reg.ReadString('Formato')= 'BMP' then begin Destino:= reg.ReadString('Diretório de Destino')+'\Flash'+IntToStr(Numero)+'.bmp'; CapturarSalvarBitmap(Destino); end Else If reg.ReadString('Formato')= 'JPEG' then begin Destino:= reg.ReadString('Diretório de Destino')+'\Flash'+IntToStr(Numero)+'.jpeg'; CapturarSalvarJPEG(Destino); end Else If reg.ReadString('Formato')= 'GIF' then begin Destino:= reg.ReadString('Diretório de Destino')+'\Flash'+IntToStr(Numero)+'.gif'; CapturarSalvarGIF(Destino); end; reg.WriteInteger('Número do último screen salvo',Numero); Label2.Caption:= IntToStr(ScreensSalvos); reg.WriteInteger('Screens Salvos',ScreensSalvos); reg.WriteString('Último Shot',Destino); reg.CloseKey; //Manda o form para frente. SetForegroundWindow(handle); end; Por exemplo a função CapturarSalvarJPEG(Destino); trabalha da seguinte maneira: Procedure TfrmPrincipal.CapturarSalvarJPEG(Filename:TFilename); Var JPEG:TJPEGImage; begin Try //Primeiro você cria o JPEG: JPEG := TJPEGImage.Create; //Depois você carrega o bitmap do Image pelo Clipboard: Image1.Picture.Bitmap.LoadFromClipboardFormat(CF_BitMap,Clipboard.GetAsHandle(CF_BitMap),0); //Depois você assinala o JPEG a partir do Bitmap: JPEG.Assign(Image1.Picture.Bitmap); //Depois você salva o JPEG: JPEG.SaveToFile(FileName); JPEG.Free; except begin Messagebox(0,'Se você está capturando parte da tela, ATENÇÃO!!! '+#13+'É necessário ficar com a tecla F3 apertada para capturar parte da tela. '+#13+ 'Por favor leia as dicas do programa FLASH. ','ERRO AO CAPTURAR',MB_IconStop); reg.RootKey:=HKEY_LOCAL_MACHINE; reg.OpenKey('SOFTWARE\NOBRE INFORMÁTICA\FLASH',True); Image1.Picture.LoadFromFile(reg.readString('Último Shot')); reg.CloseKey; Abort; end; end; end; Thales dentro disto que postei onde entram as funções que você mencionou?
  13. Que bom que você voltou Micheus! Se você tivesse aqui no sábado este tópico teria estourado o número de posts
  14. O 30,30 deverá ser substituído por GetCursorPos(alguma coisa)? Nunca usei esta função! DrawIconEx(bmp.canvas.Handle,30,30,GetCursor,0,0,0,0,DI_NORMAL or DI_DEFAULTSIZE); deverá ser colocado antes de Keybd_Event(VK_Snapshot,0, 0, 0);?? Thales, por favor, pode rascunhar um código para mim?
  15. "Não sei se tem algum jeito de ter acesso ao bitmap do cursor corrente, vou dar uma pesquisada e posto mais tarde caso consiga." Thales, agradeço a ajuda. "E o que você quis dizer com ''Estava colocando coisas repetidas demais e erradas dentro do evento timer."? Eu estava ou você estava?" Eu é que estava errando feio, por conta de não ter atentado para o fato de Keybd_Event(VK_Snapshot,0, 0, 0);fazer uma chamada a tecla print.
  16. As funções abaixo servem para capturar screens... capturar a tela toda Keybd_Event(VK_Snapshot,0, 0, 0); Ou a janela ativa Keybd_Event(VK_Snapshot,1, 0, 0); Gostaria de ter a opção da seta do mouse aparecer ou não. Acontece que as funções acima Keybd_Event(VK_Snapshot,0, 0, 0); Keybd_Event(VK_Snapshot,1, 0, 0); Capturam sem a seta. Tem como ter estas duas opções usando estas funções? Existe um código por aí, que captura com o sem, mas não faz uso destas funções! Teria como fazer isto usando elas? A propósito será que tem alguma coisa a ver com os parametros da função... Não sei o que significam o terceiro(0) e o quarto parâmetro(0) das funções acima. Alguém sabe?
  17. Thales, resolvi dando uma enxugada no código. Estava colocando coisas repetidas demais e erradas dentro do evento timer. Estou testando e até agora não deu mais problemas. Na realidade estava esquecendo que que a função Keybd_Event(VK_Snapshot,0, 0, 0); faz uma chamada a tecla printscreen e isso estava fazendo a diferença no meu raciocínio e levando ao looping infinito. Agora estou precisando da seguinte ajuda: Alguém disse que gostaria que no programa ao capturar a tela toda Keybd_Event(VK_Snapshot,0, 0, 0); Ou a janela ativa Keybd_Event(VK_Snapshot,1, 0, 0); gostaria de ter a opção da seta do mouse aparecer ou não. Acontece que as funções acima Keybd_Event(VK_Snapshot,0, 0, 0); Keybd_Event(VK_Snapshot,1, 0, 0); Capturam sem a seta. Tem como ter estas duas opções usando estas funções? Existe um código por aí, que captura com o sem, mas não faz uso destas funções! Teria como fazer isto usando elas? A propósito será que tem alguma coisa a ver com os parametros da função... Não sei o que significam o terceiro(0) e o quarto parâmetro(0) das funções acima. Alguém sabe? Como este tópico está com um título que não tem muito a ver com está nova pergunta vou abrir um outro com a mesma pergunta.
  18. Tenho um programa ainda em andamento que captura screens, janelas ativas etc... Só que ele é meio instável. Quando abro e mando capturar em qualquer condição funciona bem, mas quando minimizo e tento capturar, com a tecla print, as vezes captura as vezes não. Alguém poderia dar uma olhada nos códigos e ver o que pode estar causando a instabilidade. A tecla está registrada e aparece da seguinte maneira: { Private declarations } procedure WMHotKey(var Msg: TWMHotKey); message WM_HOTKEY; No OnCreat do Form tenho {== Desabilita a tecla Print Screen ==} RegisterHotkey( Handle, 500, 0, VK_SNAPSHOT ); tenho também procedure TfrmPrincipal.WMHotKey (var Msg : TWMHotKey); begin if Msg.HotKey = 500 then begin {== Habilita a tecla Print Screen ==} //Se não colocar cria um looping UnRegisterHotkey( Handle, 500 ); reg.RootKey:=HKEY_LOCAL_MACHINE; reg.OpenKey('SOFTWARE\NOBRE INFORMÁTICA\FLASH',FALSE); If reg.ReadString('Capturar')= 'A tela toda' then begin Clipboard.Clear;//Se não colocar dá erro Keybd_Event(VK_Snapshot,0, 0, 0); reg.CloseKey; {== Desabilita a tecla Print Screen ==} RegisterHotkey( Handle, 500, 0, VK_SNAPSHOT ); end Else If reg.ReadString('Capturar')= 'A janela ativa' then begin Clipboard.Clear;//Se não colocar dá erro Keybd_Event(VK_Snapshot,1, 0, 0); reg.CloseKey; {== Desabilita a tecla Print Screen ==} RegisterHotkey( Handle, 500, 0, VK_SNAPSHOT ); end Else If reg.ReadString('Capturar')= 'Parte da Tela' then begin reg.CloseKey; TimerParteDaTela.Enabled:= True; end; Timer1.Enabled:=True;//Aciona a captura end; end; Não entendo porque não pode ficar procedure TfrmPrincipal.WMHotKey (var Msg : TWMHotKey); begin if Msg.HotKey = 500 then begin reg.RootKey:=HKEY_LOCAL_MACHINE; reg.OpenKey('SOFTWARE\NOBRE INFORMÁTICA\FLASH',FALSE); If reg.ReadString('Capturar')= 'A tela toda' then begin Clipboard.Clear;//Se não colocar dá erro Keybd_Event(VK_Snapshot,0, 0, 0); reg.CloseKey; end Else If reg.ReadString('Capturar')= 'A janela ativa' then begin Clipboard.Clear;//Se não colocar dá erro Keybd_Event(VK_Snapshot,1, 0, 0); reg.CloseKey; end Else If reg.ReadString('Capturar')= 'Parte da Tela' then begin reg.CloseKey; TimerParteDaTela.Enabled:= True; end; Timer1.Enabled:=True;//Aciona a captura end; end; Apesar de já ter registrado no oncreate, se tirar: {== Habilita a tecla Print Screen ==} //Se não colocar cria um looping UnRegisterHotkey( Handle, 500 ); {== Desabilita a tecla Print Screen ==} RegisterHotkey( Handle, 500, 0, VK_SNAPSHOT ); O programa entra em looping. Alguém tem alguma idéia do que estou fazendo de errado? Ao minimizar as vezes funciona as vezes não. Para minimizar estou usando o seguinte código: procedure TfrmPrincipal.WMSysCommand(var Msg: TWMSysCommand); Var H : HWnd; begin inherited; if (Msg.CmdType = SC_MINIMIZE) then begin If reg.ReadString('Timer')='Sim' then begin frmConfig.cmdPararCaptura.ShowHint:= True; frmConfig.cmdPararCaptura.Enabled:= True; frmConfig.TimerCaptura.Interval:= 60000*reg.ReadInteger('Segundos'); frmConfig.TimerCaptura.Enabled:= True; end; //O código abaixo esconde a aplicação da barra // de tarefas. H := FindWindow(Nil,'FLASH'); If H <> 0 then ShowWindow(H,SW_HIDE); frmPrincipal.Hide; frmPrincipal.RxTrayIcon1.Active := True; {== Desabilita a tecla Print Screen ==} RegisterHotkey( Handle, 500, 0, VK_SNAPSHOT ); end; if (Msg.CmdType = SC_CLOSE) then begin Application.Terminate; end; end;
  19. Fico feliz com a volta do Progr'amador ao fórum DELPHI. Aprendi muito com ele.
  20. Thales, derrepente ele resumiu tudo que discutimos, testou e gostou. Será que não foi isto? Realmente Thales, senti falta do Micheus também. Aliás, por onde anda também o s3c?
  21. Paulo Nobre

    Ie Fdp...

    Eu poderia ter os dois instalados ao mesmo tempo ou haveria problema de conflito? Alguém que tenha os DOIS instalados poderia opinar?
  22. Toda a comunidade é que só tem a ganhar : ;) Testei e como já imaginava deu certo. Em relação ao que você mencionou: registrei e vou trocar.
  23. Realmente sobre este assunto não valeria a pena. :) Abraços e obrigado por mais esta. :D
  24. Vi sim Thales, copiei o código. Nunca se sabe se no futuro não se aproveita alguma coisa :P Realmente, Thales, revendo todo o tópico com calma, você mencionou sim. É claro, que com sua experiência de busca, você até já sabe onde é o lugar exato.
×
×
  • Criar Novo...