Depurando Azure Functions na Máquina Local com o IronOCR

Curtis Chau
Curtis Chau
Updated: 29 de junho de 2026

Problemas ao executar o Azure localmente

As exceções comuns observadas ao se deparar com esse problema são:

  • Erro ao implantar Tesseract para IronOCR
  • Falha ao localizar 'libtesseract-5'
  • Não foi possível localizar 'libtesseract-5'
  • Falha ao localizar o Tesseract-5
  • Erro ao localizar o arquivo de configuração de implantação em \bin\runtimes\win-x64\native\ IronOCR
  • IronOCR: Arquivo .traineddata ausente para 'EnglishBest', que deveria estar localizado em

Problema com dependências ao executar o Azure Functions localmente

Ao executar o Azure localmente, usando o Azurite (VS2022) ou o Emulador de Armazenamento do Azure (VS2019), um diretório bin adicional é criado e usado pelo Emulador de Armazenamento para a implantação. Somente os arquivos DLL são copiados para este diretório, portanto, softwares que exigem arquivos adicionais não funcionarão e poderão gerar a exceção acima.

Você pode resolver esse problema copiando o diretório de tempos de execução para o diretório bin separado usado pelo Emulador de Armazenamento. Recomendamos realizar isso como um evento pós-compilação (veja as instruções abaixo) ao executar localmente (pois a recompilação/compilação retornará o diretório bin ao seu estado original). Você não encontrará esse problema ao implantar na nuvem.

Problema: Ao executar um projeto do Azure Functions localmente, é criada uma pasta bin adicional, a partir da qual a função é executada. No entanto, ele não copia todos os arquivos necessários para a pasta bin mencionada. Exemplo: Um projeto em C:\code\azure-functions-test que é compilado para C:\code\azure-functions-test\bin\Debug\netcoreapp3.1

  • Solução: Copie o diretório C:\code\azure-functions-test\bin\Debug\netcoreapp3.1\runtimes para que ele também exista dentro de C:\code\azure-functions-test\bin\Debug\netcoreapp3.1\bin
  • Sobrescrever quaisquer arquivos existentes, se solicitado.

Etapas do evento pós-construção

  1. Clique com o botão direito do mouse no projeto do Azure Functions e selecione Propriedades.

  2. Desça a página até a seção Eventos.

  3. Insira um comando de evento pós-compilação que copiará todos os arquivos necessários para o diretório correto:

    XCOPY "$(TargetDir)runtimes" "$(TargetDir)bin\runtimes" /S /E /Y /I /R /D
    SHELL
    • Explicação:
  • XCOPY é usado para copiar arquivos e árvores de diretórios.
  • $(TargetDir)runtimes é o diretório de origem onde os arquivos de tempo de execução são compilados inicialmente.
  • $(TargetDir)bin\runtimes é o diretório de destino para os arquivos de tempo de execução quando o aplicativo é executado localmente.
    • Opções:
  • /S copia diretórios e subdiretórios exceto os vazios.
  • /E copia todos os subdiretórios, incluindo os vazios.
  • /Y suprime a confirmação para substituir arquivos existentes.
  • /I se o destino não existir e copiar mais de um arquivo, assume que o destino deve ser um diretório.
  • /R substitui arquivos somente leitura.
  • /D copia apenas arquivos que são mais novos ou estão faltando no destino.

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

Leia mais

Pronto para começar?

Nuget Downloads 6,357,159Versão:2026.11recém-lançado