Juliomar, fiz a alteração no pcnNFeW.pas conforme imagem anterior. Recompilei o componente, e na compilação do meu aplicativo só passa nesse bloco quando eu uso a funções ACBrNFe1.NotasFiscais.GerarNFe ou ACBrNFe1.NotasFiscais.Items[I].GerarXML com o campo ACBrNFe1.NotasFiscais.Items[I].NFe.procNFe.nProt preenchido.
No momento de gerar o XML antes de enviar à SEFAZ, por motivos óbvios, não temos o número do protocolo, então a execução não passa por esse bloco.
Depois da nota emitida, carregando o XML para o componente ACBrNFe, também não passa por esse bloco, e a tag <InfProt> vem com todos os dados do protocolo, porém, sem a informação que eu preciso <InfProt Id="ID9999999999999">. Então eu uso LoadFromFile do ACBrNFe com a nota aprovada e todos os dados do protocolo, porém passando o nProt numa nova geração de XML.
Aparentemente funcionou. No ambiente de homologação, tudo ok.
Em anexo um exemplo da forma que eu fiz para que <InfProt Id="ID9999999999999"> funcione.
Foi uma solução que eu consegui no susto,então eu não tenho como avaliar se está resolvido.
Agradeço por me mostrar o caminho. Obrigado mesmo!
O meu arquivo de exemplo.
Luis Paulo
Exemplo.pas