Sumário
Índice 🔎︎

# Depurar um programa Basic

## Pontos de interrupção e a execução passo a passo

Para verificar erros em cada linha no programa Basic, você pode usar a execução passo a passo. É fácil rastrear erros, já que você pode ver imediatamente o resultado de cada passo. Um ponteiro na coluna de ponto de interrupção do Editor indica a linha atual. Você também pode definir um ponto de interrupção para forçar a interrupção do programa em uma posição específica.

Clique duas vezes na coluna ponto de interrupção à esquerda na janela do Editor para alternar um ponto de interrupção na linha correspondente. Quando o programa alcança um ponto de interrupção, a execução do programa é interrompida.

A execução em passo a passo usando o ícone Passo único faz com que o programa ramifique-se por funções e procedimentos.

A execução passo a passo do procedimento que usa o ícone Passo do procedimento faz com que o programa passe por procedimentos e funções como um único passo.

### Propriedades de um ponto de interrupção

As propriedades de um ponto de interrupção estão disponíveis no menu de contexto ao clicar com o botão da direita no ponto de interrupção na coluna correspondente.

Para ativar e desativar um ponto de interrupção, selecione Ativar no menu de contexto. Quando um ponto de interrupção é desativado, ele não interrompe a execução do programa.

Selecione Propriedades no menu de contexto de um ponto de interrupção ou selecione Pontos de interrupção no menu de contexto da coluna do ponto para chamar a caixa de diálogo Pontos de interrupção, para você pode especificar outras opções do pontos de interrupção.

A lista exibe todos os pontos de interrupção com a linha correspondente no código fonte. Você pode ativar ou desativar um ponto de interrupção selecionado selecionando ou limpando a caixa Ativo.

A Contagem passagem especifica o número passagens pelo ponto de interrupção antes que o programa seja interrompido. Se você digitar 0 (configuração padrão), o programa sempre será interrompido logo que um ponto de interrupção é encontrado.

Clique em Excluir para remover o ponto de interrupção do programa.

## Observar o valor das variáveis

Para monitorar os valores de uma variável, adicione-a à janela Inspecionar. Para adicionar uma variável à lista de variáveis inspecionadas, digite o nome da variável na caixa de texto Inspecionar e pressione Enter.

Os valores de variáveis só serão exibidos se fizerem parte do escopo. Variáveis não definidas na localização do código-fonte atual exibem «fora de escopo» (Out of Scope) em vez de um valor.

Também é possível incluir matrizes na janela Inspecionar. Se você digitar o nome de uma variável de matriz sem um valor de índice na caixa de texto Inspecionar, o conteúdo da matriz inteira será exibido.

Se você deixar o mouse sobre uma variável predefinida no Editor durante o tempo de execução, o conteúdo da variável será exibido em uma caixa pop-up.

## A janela da pilha de chamadas

Fornece uma visão geral da hierarquia de chamadas de procedimentos e funções. Você pode determinar quais procedimentos e funções chamaram quais outros procedimentos e funções no ponto atual do código fonte.

## Lista de erros de Run-Time

1 Ocorreu uma exceção

2 Erro de sintaxe

3 Return sem Gosub

4 Entrada incorreta; tente novamente

5 Chamada de procedimento inválida

6 Excedida a capacidade

7 Memória insuficiente

8 A matriz já foi dimensionada

9 Índice fora do intervalo definido

10 Definição duplicada

11 Divisão por zero

12 Variável não definida

13 Tipo de dados incompatível

14 Parâmetro inválido

18 Processo interrompido pelo usuário

20 Continuar sem erro

28 Memória da pilha insuficiente

35 Procedimento Sub ou procedimento function indefinido

48 Erro ao carregar o arquivo DLL

49 Convenção de chamada de DLL incorreta

51 Erro interno

52 Nome ou número de arquivo incorreto

53 Arquivo não encontrado

54 Modo de arquivo incorreto

55 O arquivo já está aberto

57 Erro de E/S do dispositivo

58 O arquivo já existe

59 Comprimento do registro incorreto

61 Disco ou HD cheio

62 A leitura ultrapassa o fim do arquivo (EOF)

63 Número de registro incorreto

67 Arquivos em excesso

68 Dispositivo não disponível

70 Acesso negado

71 O disco não está pronto

73 Não implementado

74 Não é possível renomear em drives diferentes

75 Erro de acesso ao caminho/arquivo

76 Caminho não encontrado

91 Variável de objeto não definida

93 Padrão de cadeia de caracteres inválida

94 Uso do zero não permitido

250 Erro de DDE

280 Aguardando resposta da conexão DDE

281 Não há canais DDE disponíveis

282 Nenhuma aplicação respondeu à iniciação da conexão DDE

283 Aplicações demais responderam à iniciação da conexão DDE

284 Canal DDE trancado

285 A aplicação externa não pode executar operação DDE

286 Tempo esgotado ao esperar pela resposta DDE

287 O usuário pressionou ESCAPE durante a operação DDE

288 Aplicação externa ocupada

289 Operação DDE sem dados

290 Os dados estão no formato errado

291 A aplicação externa foi encerrada

292 A conexão DDE foi interrompida ou modificada

293 Método DDE invocado sem canal aberto

294 Formato do vínculo DDE inválido

295 A mensagem DDE foi perdida

296 Colar vínculo já efetuado

297 O modo de vínculo não pode ser definido por causa de um tópico de vínculo inválido

298 O DDE requer o arquivo DDEML.DLL

323 O módulo não pode ser carregado; formato inválido

341 Índice do objeto inválido

366 O objeto não está disponível

380 Valor da propriedade inválido

382 Essa propriedade é somente para leitura

394 Essa propriedade é somente para escrita

420 Referência do objeto inválida

423 Propriedade ou método não encontrado

424 Objeto necessário

425 Uso inválido de um objeto

430 A automação OLE não é suportada por esse objeto

438 Essa propriedade ou método não é suportado pelo objeto

440 Erro de automação OLE

445 Essa ação não é suportada pelo objeto dado

446 Argumentos nomeados não são suportados pelo objeto dado

447 A definição da localidade atual não é suportada pelo objeto dado

448 Argumento nomeado não encontrado

449 O argumento não é opcional

450 Número incorreto de argumentos

451 O objeto não é uma lista

452 Número ordinal inválido

453 A função DLL especificada não foi encontrada

460 Formato da área de transferência inválido

951 Símbolo inesperado:

952 Inesperado:

953 Símbolo esperado

954 Variável esperada

955 Rótulo esperado

956 O valor não pode ser aplicado

957 A variável já foi definida

958 Procedimento Sub ou procedimento Function já definido

959 Rótulo já definido

960 Variável não encontrada

961 Array ou procedimento não encontrado

962 Procedimento não encontrado

963 Rótulo indefinido

964 Tipo de dados desconhecido

965 Saída esperada

966 Bloco de instruções ainda aberto: faltando

967 Parênteses não fecham

968 Símbolo já definido diferentemente

969 Os parâmetros não correspondem ao procedimento

970 Caractere inválido no número

971 O array deve ser dimensionado

972 Else/Endif sem If

973 proibido dentro de um procedimento

974 proibido fora de um procedimento

975 As especificações da dimensão não conferem

976 Opção desconhecida:

977 Constante redefinida

978 O programa é grande demais

979 Cadeias de caracteres ou arrays não permitidos

1000 O objeto não possui essa propriedade

1001 O objeto não possui esse método

1002 Falta um argumento obrigatório

1003 Número de argumentos inválido

1004 Erro ao executar um método

1005 Impossível definir a propriedade

1006 Impossível determinar a propriedade