Erro Out-of-Memory no Delphi XE7

Outro problema que enfrentei no Delphi e muitos devem estar sofrendo é o erro “Out-of-Memory” esse erro geralmente ocorre quando o executável do seu projeto começa a ficar grande, pelo menos no meu caso, encontrei uma forma de reduzir essa ocorrência a quase zero, por outro lado o auto-completar parou de funcionar, mas como é apenas no projeto em questão por enquanto estou trabalhando com está solução que foi a melhor que encontrei:

1º. vá em Project->Options->Delphi Compiler e Marque a opção Use MSBuild externally to compile; 

2º. vá em Project->Options->Delphi Compiler->Compiling->Debugging, e marque a opção Use debug .dcus como False;

3º. Vá em Project->Options->Delphi Compiler->Linking, e marque a opção Include remote debug symbols como True;

No meu caso resolveu o erro, mas como eu disse o auto-completar parou de funcionar, se alguém encontrar uma solução melhor, comente, espero ter ajudado!

Resolver erro “Debug process is already running”

Geralmente esse erro vem seguido de um erro ligado a DLL ntdll.dll, e parece que vai piorando com o tempo, ele ocorre geralmente quando você uso o debugador do delphi, e para resolver embora difícil de encontrar a maneira é relativamente facil, siga os procedimentos abaixo e veja se resolve, no meu caso deu certo:

1º Abra o Registro, regedit no windows;
2ª Navegue até o registro: HKCU\Software\Embarcadero\BDS\15.0\Debugging\Embarcadero Debuggers\Evaluators
3º Edite a entrada comp32x.dll alterando o valor da mesma que provavelmente estará como 1, altere para -1

Eu testei essa solução usando o Delphi Xe7 por isso no caminho temos a versão 15, provavelmente funcione para outras versões, no caso de outras verões procure a versão correspondente a sua…

espero que ajude, abs

Resolver erro Exception EAccessViolation in module rtl210.bpl at 00016A9C no Delphi Xe7

Fala pessoal, faz um tempo que não posto nada por aqui, e faz dias que venho tendo problemas no meu ambiente de trabalho com Delphi Xe7 e Windows 10 64bits.. sempre com esse erro ao fechar o delphi, como eu uso o acbr aqui, vi no forum do ACBR uma solução, mas no meu caso não resolveu, então vou postar aqui as duas coisas que fiz para resolver o problema.

1º Na pasta DLLs do ACBR copiei as DLLS dentro da pasta openSSL e colei nas pastas SysWow e System32;
2º E no meu caso o que resolveu o problema, no Item Component -> Install Packages o Item Embardadero FMX Standard Components estava desmarcado, Habilitei o pacote, e depois disso o problema foi resolvido;

Espero ter ajudado, pois sofri bastante para resolver o problema, abs e até a próxima

Máscara em Campos Delphi

A máscara basicamente consiste de três campos, separados por ponto e vírgula. A primeira parte é a máscara propriamente dita, a segunda parte determina se os caracteres fixos devem ser ou não salvos com a máscara (ex: /, -, (, …).
A terceira parte da máscara representa o carácter em branco, podendo ser substituído por outro (ex: _, @, …).
Caracteres especiais utilizados com a máscara:
! Faz com que a digitação da máscara fique parada no primeiro carácter, fazendo com que os caracteres digitados que se movam. Ex: !;0;_

> Todos os caracteres alfabéticos digitados após este símbolo serão convertidos para maiúsculos. Ex:>aaa;0;_

< Todos os caracteres alfabéticos digitados após este símbolo serão convertidos para minúsculos. Ex:<aaa;0;_

<> Anula o uso dos caracteres > e <. Ex: >aaa<>aaa;0;_

\ Utilizado para marcar determinado caractere não especial como fixo, não podendo sobrescrevê-lo. Ex:!\(999\)000-0000;0;_

L Caracteres alfabéticos (A-Z, a-z.) de preenchimento obrigatório. Ex: LLL;1;_

l (Letra L minúscula) Caracteres alfabéticos (A-Z, a-z.) de preenchimento opcional. Ex: lll;1;_

A Caracteres alfanuméricos (A-Z, a-z, 0-9) de preenchimento obrigatório. Ex: AAA;1;_

a Caracteres alfanuméricos (A-Z, a-z, 0-9) de preenchimento opcional. Ex: aaa;1;_

C Exige preenchimento obrigatório com qualquer caractere para a posição. Ex: CCC;1;_

c Permite qualquer caractere para a posição de preenchimento opcional. Ex: ccc;1;_

0 Caracteres numéricos (0-9) de preenchimento obrigatório. Ex: 000;1;_

9 Caracteres numéricos (0-9) de preenchimento opcional. Ex: 999;1;_

# Caracteres numéricos (0-9) e os sinais de – ou + de preenchimento opcional. Ex: ###;1;_

: Utilizado como separador de horas, minutos e segundos. Ex: !00:00:00;1;_

/ Utilizado como separador de dia, mês e ano. Ex: !99/99/9999;1;_

; Separa os três campos da máscara.

_ Caractere usado normalmente nas posições do campo ainda não preenchidas.

 

Essa informações foram retiradas do  link: http://forum.imasters.com.br/topic/204044-trabalhando-com-mascaras-maskedit/

todos os créditos são do Autor, estou apenas compartilhando a informação por realmente ser algo muito útil e utilizado cotidianamente, para testarem podem colocar um Maskedit no form e testar os exemplos que realmente são de grande ajuda

Download da DLL utilizada para Conectar MYSQL com delphi

Para efetuar a conexão do Delphi com o Mysql utilizando o componente FireDac no Delphi precisamos utilizar a DLL do mysql

 

faça o download libmySQL

 

Lembre-se para que tudo funcione perfeitamente a DLL deve estar armazenada na pasta System32 no caso do windows 32 ou na pasta SysWOW no caso do windows 64 ou se preferir pode utilizar a DLL na pasta onde o seu projeto está salvo.

Organizar Projetos Delphi em pasta

Organizando Projeto do delphi em pastas

 

A organização da estrutura de pastas e arquivos de um projeto consiste em colocar cada tipo de arquivo em pastas separadas. Assim, iremos poupar tempo na localização de arquivos, melhorar o controle de versão e deixar a estrutura visualmente mais elegante.

Vou apresentar aqui um modelo simples de estrutura. Dessa forma, vocês poderão ter uma base para criar as suas próprias formas de organização.

Árvore representando a estrutura da pasta Projeto1:

-Projeto
–DCU
–DPR
–EXE
–PAS

  • dpr– pasta contendo o arquivo *.dpr do projeto e outros arquivos de configuração que o delphi gera, como por exemplo o *.res;
  • pas– pasta com os arquivos *.pas*.dfm e *.ddp referente aos formulários e unidades;
  • dcu– pasta onde o delphi irá colocar os arquivos *.dcu, que são as unidades compiladas;
  • exe– pasta onde o delphi gerará o arquivo executável. Dentro desta pasta, você colocará qualquer tipo de arquivo que será distribuído junto com o executável do sistema, como arquivos*.dll ou arquivos de conexão a banco de dados *.udl.

Para que essa estrutura funcione, os seguintes procedimentos devem ser realizados:

1) Ao salvar pela primeira vez o projeto, salve o arquivo *.dpr ou *.dproj na pasta DPR;

2) Ao salvar qualquer arquivo *.pas, salve dentro da pasta PAS;

3) Realizar a configuração da IDE para ela gerar o *.exe e o *.dcu em suas respectivas pastas. Para isso, vá no menu Project –> Options… e mude os valores de “Output directory e Unit output directory conforme a imagem abaixo:

Delphi organizado

– Os dois pontos (..) indicam que as pastas EXE e DCU estão um nível acima na árvore de diretórios em relação ao arquivo *.dpr.

4) Compilar o projeto e observar se os arquivos foram gerados nas pastas corretas.

Com relação ao controle de versões, você pode tranquilamente adicionar a pasta DCU à lista de ignorados, pois ela contém somente unidades compiladas e não interessa fazer o controle delas. Dependendo do caso, você poderá ignorar também a pasta EXE no versionamento.

Dependendo do projeto, outras pastas poderão ser criadas para ficar ainda mais organizado. Um exemplo seria unidades de terceiros, que você poderia colocar em uma outra pasta. Aí vai da necessidade de cada um.