Erro 12029 ao utilizar Delphi com Kinvey

Situação: Servidor de aplicação desenvolvido em Delphi (Berlin), usando o Kinvey para envio de Push Notifications para celulares Android e iOS.

Problema: De uma hora para outra, não foi mais possível enviar as notificações. O erro retornado era “REST request failed: Error sending data (12029). Uma conexão com o servidor não pode ser estabelecida“.

Ambiente: Windows Server 2012 (100% atualizado através do Windows Update)

Para encurtar a história, depois de muito bater a cabeça, descobri que o problema estava no fato do servidor de aplicação não conseguir conectar o Kinvey usando TLS 1.2. Obs: Nas configurações de Internet do Windows, TLS 1.1 e 1.2 estavam ativas.

Aparentemente o Kinvey passou a exigir TLS 1.2 nas conexões (não sei exatamente em que data isso se tornou obrigatório, possivelmente em 04/Setembro/2018). Olhando nas DLLs carregadas pela aplicação Delphi, percebi que ela faz uso do WinHttp para comunicação. Sendo assim, vasculhando a internet, encontrei esse artigo, da própria Microsoft: Atualização para ativar o TLS 1.1 e o TLS 1.2 como um protocolos de segurança padrão no WinHTTP no Windows.

Após instalar o EasyFix do link acima, tudo voltou a funcionar!

Fica a dica, e também a reclamação do “por que” o WindowsUpdate não ter instalado isso por padrão!

Bruce Dickinson – um autobiografia (review sem spoilers)

Capa da biografiaBruce Dickinson, pra quem não é do mundo do Rock/Heavy Metal, é o vocalista da banda Iron Maiden. Mas mais do que isso, é um exemplo de empreendedor multitarefa bem-sucedido. Seu talento como cantor é inquestionável, mas se já não bastasse isso, ele também é um esgrimista profissional, escritor, roteirista, historiador, dono de empresas ligadas a aviação, piloto de vôos comerciais (estamos falando de Boings 747) e, mais recentemente, um palestrante cada vez mais requisitado em eventos das mais variadas áreas (informática, empreendedorismo, etc).

A autobiografia de Bruce, lá fora chamada “What this button do?” (“O que faz esse botão?”) era muito aguardada pelos fãs de todo o mundo, e já se encontra disponível em português, seja em formato impresso ou eBook. Interiormente, existia apenas uma biografia extra-oficial, que focada mais na história das bandas pela qual Bruce já passou do que realmente em informações “privilegiadas” da vida dele.

Ed Force OneNo livro, Bruce aborda períodos de toda sua vida, desde a infância até a luta recente contra um câncer na garganta, do qual felizmente conseguiu se livrar sem deixar sequelas na voz, não antes de travar uma árdua batalha narrada com detalhes no último capítulo da obra. Diferente de algumas autobiografias de outros artistas, Bruce preferiu não falar de temas particulares, como casamentos, separações, intrigas, etc. focando naquilo que é realmente interessante, ou seja, se você espera algo do tipo “Revista Contigo”, vai cair do cavalo! O conteúdo tem muita coisa interessante, passando pela decisão de se afastar do Maiden, de se tornar um piloto (primeiro de aviões pequenos, depois jumbos), de se aventurar com sua banda solo em Sarajevo (quando o país ainda estava em guerra), e assim por diante.

Enfim, seja você um fã do Maiden ou apenas alguém que gosta de ler sobre as experiências de vida de outras pessoas, esse é um livro que não irá decepcionar.

Clique aqui para comprar o livro na Amazon.com.br

R$ 130 de desconto no AirBnb

Através do AirBnb você pode alugar quartos, apartamentos, casas, etc. em qualquer lugar do mundo, diretamente com o proprietário. Na maioria das vezes, sai muito mais barato do que ficar em hotéis.

Obviamente, deve-se tomar algumas precauções, como verificar as características e fotos do local, a localização, segurança e, principalmente, os comentários de quem já se hospedou lá. Tudo isso fica disponível no próprio site. Os melhores proprietários ganham o selo de Superhost, e só isso já pode ser uma boa indicação de que não terá problemas.

Para os que pretendem se cadastrar no AirBnb, use este link para se cadastrar e ganhar R$ 130,00 de desconto na sua primeira estadia com valor superior a R$ 250.

Iron Maiden eBooks (grátis)

O Maiden Croatia disponibilizou todos os livros sobre o Iron Maiden, já publicados por eles, em formato de eBook, gratuitamente!

São vários livros que tratam de assuntos diretamente relacionados a banda, algum de seus integrantes, ou a um album específico!

Os livros estão em inglês. Caso prefira, poderá comprar as versões impressas dos livros a partir do mesmo link. As imagens das capas também estão disponíveis para download gratuito.

Para baixar os livros, entre em www.maidencroatia.com/ebooks/

Observe que na página também há um link de doação para o Teenage Cancer Trust, entidade que ajuda jovens que estão com câncer. Caso tenha possibilidades, faça uma doação de qualquer valor.

Motocada para Gonçalves-MG

Planejado inicialmente como um bate-volta de Piracicaba/Paulínia até Gonçalves-MG, com possibilidade de passar por Monte Verde na volta, através das estradas de terra que cortam a Serra da Mantiqueira.

No fim, devido ao dilúvio que caiu na cidade, as motos, que estavam com os pneus originais (não de cravo) não conseguiram subir os morros, que tinham até 70º de inclinação! Acabamos tendo que voltar pelo único acesso asfaltado, aumentando em 100km o trajeto planejado inicialmente. Pra compensar, passamos em muitos lugares bonitos na região de Santo Antônio do Pinhal, e já estamos planejando uma motocada por lá, com mais tempo pra curtir a beleza da região.

Segue vídeo resumindo o passeio. Gonçalves é uma cidade minúscula, no meio da Serra da Mantiqueira, região linda, com muitas cachoeiras e muito verde. Ótimo pra quem quer fugir da cidade e dar uma relaxada.

 

Listando as propriedades de uma classe

Segue um código (pascal/Delphi) que criei para listar as propriedades que pertencem a uma classe.

O código usa a RTTI do Delphi para “percorrer” as propriedades. A procedure é recursiva, ou seja, se uma das propriedades for também um classe, a procedure chama ela mesma passando como parâmetro a classe da propriedade encontrada.

Para compilar o código abaixo, crie uma nova aplicação VCL e no form principal coloque um TMemo e um TButton, e configure os eventos conforme o código abaixo.

Substitua o segundo parâmetro da chamada a getPropList pela classe que deseja “vasculhar”. O terceiro parâmetro é o quão “profundo” você deseja ir em relação as iterações quando uma propriedade encontrada for uma classe.

1 2 3 80