Abaixo uso dois erros comuns em aplicações BDE, principalmente em SOs mais novos como Windows Vista e 2008 Server.
Erro: Conflito de compartilhamento de memória (Shared memory conflict – $210D)
Problema: O BDE está tentando usar um endereco de memoria que já está em uso pelo SO ou outra aplicação.
Solução:
1) Fechar todas aplicações BDE;
2) Executar o Administrador do BDE (Adm BDE) pelo “Painel de Controle” ou procurar o arquivo BDEADMIN.EXE (Adm BDE), este arquivo, normalmente, fica em algum diretório em “\Arquivos de Programas\Borland…”.
3) Ao carregar Adm BDE clique na aba “Configuration”;
4) Há um item na árvore, no lado esquerdo da tela do Adm BDE, chamado “Configuration”. Se não estiver expandido, expanda-o;
5) Depois, expanda “System”. Abaixo do “System”, selecione “INIT”.
6) Na janela ao lado direito, procure o parâmetro chamado “SHAREDMEMLOCATION”. Mude o valor para “5BDE”.
7) Depois, clique na palavra “Object” na barra de menu da janela principal e selecione “Apply”.
8) Responda “OK” para a confirmação de “Save all edits…” (Salvar todas alterações).
Erro: Memória insuficiente para esta operação (Insufficient memory for this operation – $2501)
Problema: Sua aplicação (ou outra aplicação BDE) consumiu a memória reservada para o BDE.
Solução:
1. Fechar todas aplicações BDE;
2. Executar o Administrador do BDE (Adm BDE) pelo “Painel de Controle” ou procurar o arquivo BDEADMIN.EXE (Adm BDE), este arquivo, normalmente, fica em algum diretório em “\Arquivos de Programas\Borland…”.
3. Execute o Adm BDE e clique na aba “Configuration”.
4. Há um item na árvore, no lado esquerdo da tela do Adm BDE, chamado “Configuration”. Se não estiver expandido, expanda-o;
5. Depois, expanda “System”. Abaixo do “System”, selecione “INIT”.
6. Na janela ao lado direito, procure o parametro chamado “SHAREDMEMSIZE”. Mude o valor para 4096.
7. Depois, clique na palavra “Object” na barra de menu da janela principal e selecione “Apply”.
8. Responda “OK” para a confirmação de “Save all edits…” (Salvar todas alterações).
Agora você pode tentar iniciar a aplicação novamente. Se ainda tiver problemas para rodar a aplicação e você estiver rodando ela em Windows NT, 2000 ou superior, abaixo tem algumas instruções sobre, mas desta vez deixe a propriedade “SHAREDMEMSIZE” com 4096, e altere a propriedade “SHAREDMEMLOCATION” para “0x5BDE”.
Então aplique as alterações antes e tente rodar novamente sua aplicação. Se o mesmo erro permanecer  tente alterar a propriedade “SHAREDMEMSIZE” para 8192. Se o erro persistir, você pode tentar informar “0x6BDE” para a propriedade “SHAREDMEMLOCATION”. Se ainda assim o erro persistir, você pode tentar outro valor para a propriedade “SHAREDMEMLOCATION”, conforme o intervalo exposto abaixo.
Outros valores podem ajudar a resolver este problema, são eles: 1000, 7000, and 7F00. Se nenhum desses valores resolverem, você pode tentar 2000, 3000, 4000, etc. ou qualquer valor dentro dos intervalos especificados para cada sistema operacional:
Windows 95/98: SHAREDMEMLOCATION = 9000 to FFFF
Windows NT/2000/2003/Vista/2008: SHAREDMEMLOCATION = 1000 to 7F00

Em experiência reportadas por outros usuários foi necessário remover ou desabilitar o driver da placa de som no Windows NT/2000/2003/Vista/2008 para resolver o problema, mas nomalmente somente “realocando” o pool de memória usado pelo BDE na propriedade SHAREDMEMLOCATION já é

o suficiente.

Fala ai pessoALL!

Abaixo uso dois erros comuns em aplicações BDE, principalmente em SOs mais novos como Windows Vista e 2008 Server, para exemplificar a parametrização de memória do BDE.

Erro:

Conflito de compartilhamento de memória (Shared memory conflict – $210D)

Problema:

O BDE está tentando usar um endereco de memoria que já está em uso pelo SO ou outra aplicação.

Solução:

1. Fechar todas aplicações BDE;

2. Executar o Administrador do BDE (Adm BDE) pelo “Painel de Controle” ou procurar o arquivo BDEADMIN.EXE (Adm BDE), este arquivo, normalmente, fica em algum diretório em “\Arquivos de Programas\Borland…”.

3. Ao carregar Adm BDE clique na aba “Configuration”;

4. Há um item na árvore, no lado esquerdo da tela do Adm BDE, chamado “Configuration”. Se não estiver expandido, expanda-o;

5. Depois, expanda “System”. Abaixo do “System”, selecione “INIT”.

6. Na janela ao lado direito, procure o parâmetro chamado “SHAREDMEMLOCATION”. Mude o valor para “5BDE”.

7. Depois, clique na palavra “Object” na barra de menu da janela principal e selecione “Apply”.

8. Responda “OK” para a confirmação de “Save all edits…” (Salvar todas alterações).

Erro:

Memória insuficiente para esta operação (Insufficient memory for this operation – $2501)

Problema:

Sua aplicação (ou outra aplicação BDE) consumiu a memória reservada para o BDE.

Solução:

1. Fechar todas aplicações BDE;

2. Executar o Administrador do BDE (Adm BDE) pelo “Painel de Controle” ou procurar o arquivo BDEADMIN.EXE (Adm BDE), este arquivo, normalmente, fica em algum diretório em “\Arquivos de Programas\Borland…”.

3. Execute o Adm BDE e clique na aba “Configuration”.

4. Há um item na árvore, no lado esquerdo da tela do Adm BDE, chamado “Configuration”. Se não estiver expandido, expanda-o;

5. Depois, expanda “System”. Abaixo do “System”, selecione “INIT”.

6. Na janela ao lado direito, procure o parametro chamado “SHAREDMEMSIZE”. Mude o valor para 4096.

7. Depois, clique na palavra “Object” na barra de menu da janela principal e selecione “Apply”.

8. Responda “OK” para a confirmação de “Save all edits…” (Salvar todas alterações).

Agora você pode tentar iniciar a aplicação novamente. Se ainda tiver problemas para rodar a aplicação e você estiver rodando ela em Windows NT, 2000 ou superior, abaixo tem algumas instruções sobre, mas desta vez deixe a propriedade “SHAREDMEMSIZE” com 4096, e altere a propriedade “SHAREDMEMLOCATION” para “0x5BDE”.

Então aplique as alterações antes e tente rodar novamente sua aplicação. Se o mesmo erro permanecer  tente alterar a propriedade “SHAREDMEMSIZE” para 8192. Se o erro persistir, você pode tentar informar “0x6BDE” para a propriedade “SHAREDMEMLOCATION”. Se ainda assim o erro persistir, você pode tentar outro valor para a propriedade “SHAREDMEMLOCATION”, conforme o intervalo exposto abaixo.

Outros valores podem ajudar a resolver este problema, são eles: 1000, 7000, and 7F00. Se nenhum desses valores resolverem, você pode tentar 2000, 3000, 4000, etc. ou qualquer valor dentro dos intervalos especificados para cada sistema operacional:

Windows 95/98: SHAREDMEMLOCATION = 9000 to FFFF

Windows NT/2000/2003/Vista/2008: SHAREDMEMLOCATION = 1000 to 7F00

Em experiência reportadas por outros usuários do BDE foi necessário remover ou desabilitar alguns drivers (som, p.e.) no Windows NT/2000/2003/Vista/2008 para resolver o problema, mas nomalmente somente “realocando” o pool de memória usado pelo BDE na propriedade SHAREDMEMLOCATION já é o suficiente.

That’s all folks!

Abraços,

Beto Lima