Canvas does not allow drawing Erro

Delphi

27/01/2012

Project XXXXXX.exe raised exception class EInvalidOperation with message Canvas does not allow drawing.

Existe uma tela no projeto que caso eu faça alguma alteração no .dfm, somente de algumas maquinas, ao tentar abrir a tela mostra esse erro, mas em outras maquina isso não acontece.

As maquinas utilizam Windows 7, Delphi 2009, 4Gb de ram, processador Quad Core AMD, 32 bits.
Alguém tem alguma luz sobre esse erro?
Luiz Silva

Luiz Silva

Curtidas 0

Respostas

Marcos Iwazaki

Marcos Iwazaki

27/01/2012

É dificil saber o que pode ser.. com poucos detalhes...
Mas tente fazer assim...
comente todo o seu codigo dessa tela.. e modifique o DFM como vc disse.
P ter certeza q é algo relacionado ao layout ou se não pode ser algum evento q esta causando isso.

T+
GOSTEI 0
Luiz Silva

Luiz Silva

27/01/2012

eu consigo alterar o .pas normalmente, mas qualquer alteração no .dfm, acontece o erro.

Mas só nessas maquinas...
GOSTEI 0
Marcos Iwazaki

Marcos Iwazaki

27/01/2012

eu não tenho ideia.. teria que debugar p achar o problema.
GOSTEI 0
Francisco Pereira

Francisco Pereira

27/01/2012

Ola Pessoal, tive os mesmo problemas e não encontrei nenhum topico sobre a solução, mas consegui resolver meu problema.

muitas vezes a falta de memoria, principalmente em debug se dá por erro no setup das variaveis de ambiente TEMP e TMP, ou seja, estamos tentando criar um arquivo temporario em um local que não existe ou não temos permissão.

neste caso basta setar PROJECT\\\\OPTIONS\\\\ENVIRONMENT BLOCK as variaveis TEMP E TMP para uma pasta temp valida. ex: c:\\\\windows\\\\temp

com isto consegui resolver dois problemas:

canvas-does-not-allow-drawing e access violation
GOSTEI 0
POSTAR