Boa tarde,
Porque você não faz diferente:
Primeiro coloca os componentes (ACBrCTe e ACBrCTeDACTeQR) em um Data Module;
Segundo, em vez de criar um lote para cada conhecimento a ser enviado para SEFAZ, você adiciona todos os conhecimentos pendentes ao componente e deixa ele fazer o resto sozinho.
Da forma que você implementou se tem 30 conhecimentos, vai ocorrer no mínimo 60 acessos a SEFAZ, 2 para cada conhecimento (um para enviar e o outro para saber se foi autorizado ou não).
Montanto um lote com no máximo 50 conhecimentos o numero de acessos cai para 2, um para enviar o lote e o outro para saber o status dos conhecimentos contidos no lote.
Caso a quantidade de conhecimentos seja superior a 50 (exemplo 70), faz por etapa, adiciona os 50 primeiros ao componente e envia, depois limpa (não destroi) o componente e adiciona os 20 restantes e envia.
A minha aplicação funciona desta forma, acho mais pratico e rapido.
Vou disponibilizar na pasta ...\Exemplos\ACBrCTe um arquivo TXT com a rotina completa usada pelo minha aplicação.
Você poderá baixa-la pelo SVN.
Espero ter ajudado.