Clique abaixo para nos ajudar
Conectar-se

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
2 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 2 Visitantes

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
COMO ESTÃO DESENVOLVENDO EM WEB?

22/8/2016, 10:48 por AJC

Pessoal, já lí sobre vários topicos aqui no forum sobre desenvolvimento web
mas ainda nada …

Comentários: 3

TRY BEGIN E FLOCK()

17/4/2017, 10:32 por AJC

Pessoal estou tendo alguns problemas de gravação em rede, estou usando
try begin, mas vi algo na …

Comentários: 1

DESENVOLVIMENTO EM REDES

4/3/2017, 18:45 por AJC

Pessoal tem ou conhece livros ou material para programação em
redes usando banco de dados nativo …

Comentários: 1

ACESSAR WEBSERVICE COM HTTPS

5/4/2018, 14:48 por AJC

Pessoal recebi este material em C# preciso fazer esta função em vfp9

YourBeanService port = new …

Comentários: 0

REPORT FORM - GERAR 2 RELATORIOS

18/3/2018, 19:02 por AJC

Pessoal, estou tentando gerar dois tipos de relatorio no report form
ou seja
primeira folha - …

Comentários: 2

Estatísticas
Temos 7095 usuários registrados
O último usuário registrado atende pelo nome de Robson0

Os nossos membros postaram um total de 12260 mensagens em 1554 assuntos

VFP Translator

Ir em baixo

Astúcia VFP Translator

Mensagem por Marcos Guedes em 26/10/2009, 13:35

Não sei se já existe algo do tipo, mas segue uma rotina que fiz para traduzir textos utilizando o Google Translate.

Espero que seja útil aos colegas!
Very Happy

Segue exemplos de como utilizar a rotina:
Código:
CLEAR

LOCAL objtraduzir AS OBJECT
LOCAL resultados AS COLLECTION
*!*
m.objtraduzir = NEWOBJECT("vfptranslator")

*!* Exemplo1 (Inglês para Português)
m.resultados = m.objtraduzir.ingles_portugues("Programming Brazil"+CHR(13)+CHR(10)+"this example was created by Marcos Guedes")
FOR i=1 TO m.resultados.COUNT
   ?m.resultados.ITEM(i)
ENDFOR
*!* Fim - Exemplo1
?
*!* Exemplo2 (Inglês para Português)
m.resultados = m.objtraduzir.ingles_portugues("life")
FOR i=1 TO m.resultados.COUNT
   ?m.resultados.ITEM(i)
ENDFOR
*!* Fim - Exemplo2
?
*!* Exemplo3 (Português para Inglês)
m.resultados = m.objtraduzir.portugues_ingles("Programação Brasil"+CHR(13)+CHR(10)+"Este exemplo foi criado por Marcos Guedes")
FOR i=1 TO m.resultados.COUNT
   ?m.resultados.ITEM(i)
ENDFOR
*!* Fim - Exemplo3
?
*!* Exemplo4 (Português para Inglês)
m.resultados = m.objtraduzir.portugues_ingles("vida")
FOR i=1 TO m.resultados.COUNT
   ?m.resultados.ITEM(i)
ENDFOR
*!* Fim - Exemplo4

m.objtraduzir = NULL

A rotina:
Código:
DEFINE CLASS vfptranslator AS CUSTOM

   *!* Autor: Marcos Guedes
   *!* Fonte: http://forum.programacaobrasil.com/visual-foxpro-f4/vfp-translator-t382.htm

   FUNCTION ingles_portugues AS COLLECTION
      LPARAMETERS conteudo AS STRING
      *!* Inglês para Português
      LOCAL conteudo AS STRING
      m.conteudo = IIF((VARTYPE(m.conteudo)!="C"),"",m.conteudo)


      RETURN THIS.traduzir("http://translate.google.com/translate_a/t?client=t&text=" + ;
         THIS.chr13_barra_n(m.conteudo) + ;
         "%0A&sl=en&tl=pt&pc=0&oc=0")
   ENDFUNC

   FUNCTION portugues_ingles AS COLLECTION
      LPARAMETERS conteudo AS STRING
      *!*  Português para Inglês
      LOCAL conteudo AS STRING
      m.conteudo = IIF((VARTYPE(m.conteudo)!="C"),"",m.conteudo)

      RETURN ;
         THIS.traduzir("http://translate.google.com/translate_a/t?client=t&text=" + ;
         THIS.chr13_barra_n(m.conteudo) + ;
         "%0A&sl=pt&tl=en&pc=0&oc=0")
   ENDFUNC

   HIDDEN FUNCTION chr13_barra_n AS STRING
      LPARAMETERS conteudo AS STRING
      *!* Controla as quebra de linhas no conteúdo
      RETURN STRTRAN(m.conteudo, CHR(13),"\n")
   ENDFUNC

   HIDDEN FUNCTION traduzir AS COLLECTION
      LPARAMETERS url AS STRING
      *!* Retorna uma Collection com os significados obtidos
      *!*
      LOCAL loxmlhttp AS OBJECT
      LOCAL lcresponse AS STRING
      LOCAL url AS STRING
      LOCAL parametros AS STRING
      LOCAL resultado AS COLLECTION
      LOCAL resulttemp AS STRING
      LOCAL contaux AS INTEGER
      *!*
      m.resultado = NEWOBJECT("Collection")
      m.parametros = ""
      *!*
      m.loxmlhttp = CREATEOBJECT("MSXML2.XMLHTTP")
      *!* Consulta o significado a partir do site do Google Translator
      m.loxmlhttp.OPEN("POST",m.url,.F.)
      *!*
      m.loxmlhttp.setrequestheader("content-type", "application/x-www-form-urlencoded")
      *!*
      m.loxmlhttp.SEND(m.parametros)
      m.lcresponse = loxmlhttp.responsetext
      *!*
      m.loxmlhttp = .NULL.

      *!* Adiciona à coleção, a primeira tradução do conteúdo
      m.resultado.ADD( STRTRAN( ALLTRIM(STREXTRACT(m.lcresponse, '"', "\n")) ,"\\ n", CHR(13)+CHR(10)) )
      *!*
      m.contaux = 3
      m.resulttemp = STREXTRACT(STRTRAN(STREXTRACT(m.lcresponse, "[", "]", m.contaux),'"',""),",")
      DO WHILE !EMPTY(m.resulttemp)

         FOR m.contador=1 TO GETWORDCOUNT(m.resulttemp,",")
            *!* Adiciona as traduções à coleção
            m.resultado.ADD( STRTRAN( ALLTRIM(GETWORDNUM(m.resulttemp,m.contador,",")), CHR(13)+CHR(10)) )
         ENDFOR

         m.contaux = m.contaux + 1
         m.resulttemp = STREXTRACT(STRTRAN(STREXTRACT(m.lcresponse, "[", "]", m.contaux),'"',""),",")
      ENDDO

      RETURN m.resultado

   ENDFUNC

ENDDEFINE


Obs:

No momento incluir apenas a tradução de inglês para português e vice-versa, mas sintam-se a vontade em fazer suas solicitações para outras traduções.

A rotina ainda está sendo testada, portanto, havendo alguma falha, favor comunicar.
Smile


Última edição por Marcos Guedes em 10/11/2009, 08:41, editado 2 vez(es)

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por marcio em 26/10/2009, 13:58

Boa Marcos,

Fiz um teste e funcionou bem. Agora é trabalhar em cima disso aí para criarmos nosso próprio tradutor...rs.

Parabéns!

[]s
avatar
marcio
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por Marcos Guedes em 27/10/2009, 12:32

Foi uma nova atualização para atender a textos com tamanho maior.
A maneira de utilizá-la é mesma!
Código:
DEFINE CLASS vfptranslator AS CUSTOM

   *!* Autor: Marcos Guedes
    *!* Fonte: http://forum.programacaobrasil.com/visual-foxpro-f4/vfp-translator-t382.htm
    *!* Última modificação: 27/10/2009

   FUNCTION ingles_portugues AS COLLECTION
      *!* Inglês para Português
      LPARAMETERS conteudo AS STRING
      LOCAL parametros AS STRING
      *!*
      IF (VARTYPE(m.conteudo)!="C") THEN
         m.conteudo = ""
      ENDIF
      m.conteudo = THIS.chr13_barra_n(m.conteudo)
      *!*
      m.parametros = "file&history_state0&hl=pt-BR&ie=UTF-8&js=y&prev=_t&sl=en&swap=1&"
      m.parametros = m.parametros + "" + "text=" + m.conteudo + "&tl=pt"
      *!*
      RETURN THIS.traduzir(m.parametros)
   ENDFUNC
   
   FUNCTION portugues_ingles AS COLLECTION
      *!*  Português para Inglês
      LPARAMETERS conteudo AS STRING
      LOCAL parametros AS STRING
      *!*
      IF (VARTYPE(m.conteudo)!="C") THEN
         m.conteudo = ""
      ENDIF
      m.conteudo = THIS.chr13_barra_n(m.conteudo)
      *!*
      m.parametros = "file&history_state0&hl=pt-BR&ie=UTF-8&js=y&prev=_t&sl=pt&swap=1&"
      m.parametros = m.parametros + "" + "text=" + m.conteudo + "&tl=en"
      *!*
      RETURN THIS.traduzir(m.parametros)
   ENDFUNC

   HIDDEN FUNCTION chr13_barra_n AS STRING
      LPARAMETERS conteudo AS STRING
      *!* Controla as quebra de linhas no conteúdo
      RETURN STRTRAN(m.conteudo, CHR(13),"\\n")
   ENDFUNC

   HIDDEN FUNCTION traduzir AS STRING
      *!* Retorna uma coleção de significados obtidos
      LPARAMETERS parametros AS STRING
      *!*
      LOCAL url AS STRING
      LOCAL loxmlhttp AS OBJECT
      LOCAL resultado AS COLLECTION
      LOCAL strtemp1 AS STRING
      LOCAL strtemp2 AS STRING
      LOCAL cttemp AS INTEGER
      *!*
      m.url = "http://translate.google.com/translate_t"
      m.resultado = NEWOBJECT("Collection")
      *!*
      IF (VARTYPE(m.parametros)!="C") THEN
         m.parametros = ""
      ENDIF
      *!*
      m.loxmlhttp = CREATEOBJECT("MSXML2.XMLHTTP")
      *!* Consulta o significado a partir do site do Google Translator      
      m.loxmlhttp.OPEN("POST",m.url,.F.)
      m.loxmlhttp.setrequestheader("content-type", "application/x-www-form-urlencoded")
      m.loxmlhttp.SEND(m.parametros)
      m.lcresponse = loxmlhttp.responsetext
      m.loxmlhttp = .NULL.

      m.strtemp1 = STRTRAN( STREXTRACT(m.lcresponse,[<div id=result_box dir="ltr">],[</div>]) ,"<br> ", CHR(13)+CHR(10) )

      *!* Substitui alguns caracteres do formato web para desktop
      m.strtemp1 = STRTRAN(m.strtemp1, "<br>", CHR(13)+CHR(10))      
      m.strtemp1 = STRTRAN(m.strtemp1, "\ n \", "")
      m.strtemp1 = STRTRAN(m.strtemp1, "\ N \", "")
      m.strtemp1 = STRTRAN(m.strtemp1, "\ \ n", "")
      m.strtemp1 = STRTRAN(m.strtemp1, "\ \ N", "")
      m.strtemp1 = STRTRAN(m.strtemp1, "\ n", "")
      m.strtemp1 = STRTRAN(m.strtemp1, "\ N", "")
      m.strtemp1 = STRTRAN(m.strtemp1, """, ["])
      m.strtemp1 = STRTRAN(m.strtemp1, "'", ['])

      *!* Texto principal
      m.resultado.ADD( ALLTRIM( m.strtemp1 ) )
      *!* Mais traduções
      m.strtemp1 = STREXTRACT(m.lcresponse,"<td><ol>","</ol></td></tr><tr><td>")
      m.cttemp = 2
      m.strtemp2 = STREXTRACT(m.lcresponse,"<li>","</li>",m.cttemp)

      DO WHILE !EMPTY(m.strtemp2)
         m.resultado.ADD( ALLTRIM(m.strtemp2) )
         m.cttemp = m.cttemp + 1
         m.strtemp2 = STREXTRACT(m.lcresponse,"<li>","</li>",m.cttemp)
      ENDDO

      RETURN m.resultado
   ENDPROC

ENDDEFINE

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por Marcos Guedes em 28/10/2009, 11:17

Um simples exemplo utilizando a rotina de tradução (No arquivo contém o projeto e executável!):

Clique aqui para realizar o download!

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por Marcos Guedes em 2/3/2010, 11:49

Atualização 02/03/2010:
Código:
CLEAR

LOCAL objtraduzir AS OBJECT
LOCAL resultados AS COLLECTION
*!*
m.objtraduzir = NEWOBJECT("vfptranslator")

*!* Exemplo1 (Inglês para Português)
m.resultado = m.objtraduzir.ingles_portugues("Programming Brazil"+CHR(13)+CHR(10)+"this example was created by Marcos Guedes")
?m.resultado
*!* Fim - Exemplo1
?
*!* Exemplo2 (Português para Inglês)
m.resultado = m.objtraduzir.portugues_ingles("Programação Brasil"+CHR(13)+CHR(10)+"Este exemplo foi criado por Marcos Guedes")
?m.resultado
*!* Fim - Exemplo2

m.objtraduzir = NULL

DEFINE CLASS vfptranslator AS CUSTOM

   *!* Autor: Marcos Guedes
   *!* Fonte: http://forum.programacaobrasil.com/visual-foxpro-f4/vfp-translator-t382.htm

   FUNCTION ingles_portugues AS COLLECTION
      LPARAMETERS conteudo AS STRING
      *!* Inglês para Português
      LOCAL conteudo AS STRING
      m.conteudo = IIF((VARTYPE(m.conteudo)!="C"),"",m.conteudo)

      RETURN THIS.traduzir(m.conteudo, "en", "pt")
   ENDFUNC

   FUNCTION portugues_ingles AS COLLECTION
      LPARAMETERS conteudo AS STRING
      *!*  Português para Inglês
      LOCAL conteudo AS STRING
      m.conteudo = IIF((VARTYPE(m.conteudo)!="C"),"",m.conteudo)

      RETURN THIS.traduzir(m.conteudo, "pt", "en")
   ENDFUNC

   HIDDEN FUNCTION chr13_barra_n AS STRING
      LPARAMETERS conteudo AS STRING
      *!* Controla as quebra de linhas no conteúdo
      RETURN STRTRAN(m.conteudo, CHR(13)+CHR(10),"\n")
   ENDFUNC

   HIDDEN FUNCTION traduzir AS COLLECTION
      LPARAMETERS texto AS STRING, lnin AS STRING, lnout AS STRING
      *!*
      
      
      m.url = [http://translate.google.com.br/]
      m.lnin = IIF((VARTYPE(m.lnin)!="C"),"en",m.lnin)
      m.lnout = IIF((VARTYPE(m.lnout)!="C"),"pt",m.lnout)

      m.parametros = ;
         "eotf=1&file=&hl=pt-BR&ie=UTF-8&js=y&layout=1&prev=_t&sl=" + ;
         m.lnin + "&text=" + THIS.chr13_barra_n(m.texto) + "&tl=" + m.lnout

      m.loxmlhttp = CREATEOBJECT("MSXML2.XMLHTTP")
      m.loxmlhttp.OPEN("POST",m.url,.F.)
      m.loxmlhttp.setrequestheader("content-type", "application/x-www-form-urlencoded")
      m.loxmlhttp.SEND(m.parametros)
      m.lcresponse = loxmlhttp.responsetext
      m.loxmlhttp = NULL

      RETURN STRTRAN(STREXTRACT(m.lcresponse,[onmouseout="this.style.backgroundColor='#fff'">],[</span>]),"\ n",CHR(13)+CHR(10))

   ENDFUNC

ENDDEFINE

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por hugo em 2/3/2010, 13:12

legal cara

heheheheh

_________________
"A tristeza é a falta de alegria, mais sem ela eu não poderia entender a alegria do fato de que a felicidade existe!"
Helio Leites - [Você precisa estar registrado e conectado para ver este link.]
avatar
hugo
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por Marcos Guedes em 4/3/2010, 16:55

Segunda versão do exemplo, para download:
- Clique aqui para baixar o arquivo!

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por AMELIO em 2/6/2015, 23:14

OLE IDispath exception code 0 from  msxml3.dll :
acesso negado

     m.loxmlhttp.SEND(m.parametros)

não qual é o erro poderia me ajudar a resolver

AMELIO - obrigado

AMELIO
Participa Pouco
Participa Pouco


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por Marcos Guedes em 22/9/2015, 15:54

Boa taede, Amelio.

Você está executando o aplicativo de que forma?
Pelo VFP? Instalado em alguma máquina?

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum