17/07/13 Delphi: Localizando erros de Access Violation

Seu aplicativo está gerando uma exceção não capturada e está exibindo uma mensagem de Access Violation e você quer identificar o local (arquivo, linha e código) onde o erro está ocorrendo? Eis o caminho: Execute a aplicação [Run], entre no modo de depuração [Pause], vá em [Search] e em seguida em [Goto Address] Entre com […]


24/09/12 TStringList: DelimitedText, Delimiter e StrictDelimiter

Uma dica para você que precisa usar as propriedades DelimitedText e Delimiter (classe TStringList) e está tendo problemas com espaços em branco na string: Defina a propriedade StrictDelimiter como True! O que ocorre é que, quando StrictDelimiter é definida como False (valor padrão),  o caractere de espaço também é interpretado como um delimitador, logo a string também é quebrada quando […]


01/03/12 Enviando e-mails com Delphi: anexos sem nome!

Existe um bug na unit IdMessageClient.pas do projeto Indy, inicialmente destribuído com o Delphi 2009 (D2009), que faz com que os nomes dos arquivos anexados através dos componentes TIdMessage / TIdAttachmentFile não sejam enviados corretamente – resultando em anexos noname. Depois de muito pesquisar acabei encontrando a solução aqui, solução esta que envolve a modificação e […]


15/12/11 Enviando e-mails com Delphi: OpenSSL + Indy10

Dica rápida para aqueles precisam enviar e-mails com Delphi e necessitam da autenticação SSL – leia-se Gmail! A versão mais recente do OpenSSL (libeay32.dll + ssleay32.dll) para Windows pode ser obtida aqui. Fica aí a dica!



06/07/11 A culpa é do Unicode: Delphi 2009 + IdSNTP = 13/3/1943?!

Se você utilizar o componente IdSNTP (Delphi 2009) para sincronizar as horas você irá perceber que algo bem estranho irá ser retornado, no meu caso, eu obtenho como data atual a string 13/3/1943! oO Pelo que eu descobri, trata-se de um bug relacionado ao Unicode e a solução nesse caso é a atualização para o […]


19/05/11 Setting compatibility mode programmatically

Isso mesmo, como configurar (através de um script, software ou instalador) que um determinado programa seja executado automaticamente em modo de compatibilidade no Windows 7 ou Vista? A solução: Crie a chave Layer dentro de HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags e em seguida um Novo Valor de Sequência, sendo que o Nome do valor deve ser o Path […]


30/09/10 Delphi – Converter String para PAnsiChar

Dica rápida para aqueles que precisam converter variáveis do tipo String para PAnsiChar ou PChar. Ao invés de declarar a variável como String, declare-a como RawByteString. Exemplo: NomeDaVariavel: RawByteString; Útil quando o Typecast explícito não traz o resultado esperado, ou seja, quando PAnsiChar(NomeDaVariavel) não funciona. Fica aí a dica!