Boa Noite!
Estou com este mesmo problema.
Quando um cliente nosso que reside no estado "MS" e o Fornecedor dele também, o Download é instantâneo, mas quando o Fornecedor dele é de algum estado com o Horário de Brasília, temos que aguardar 1 hora para conseguir fazer o Download.
Quando Realizo a Consulta Completa desta NF-e pelo Site da SEFAZ o Evento de Ciência fica com uma Hora a Mais.
Neste exemplo acima eu Enviei o Evento de Ciência às 16:55:38 UTC -4:00 - Cuiabá, mas como podem ver, foi registrado 17:55:38 UTC -3:00 - Brasília.
Observei no TEventoNFe.GerarXML está assim:
Gerador.wCampo(tcStr, 'HP13', 'dhEvento', 001, 050, 1, FormatDateTime('yyyy-mm-dd"T"hh:nn:ss',Evento.Items.InfEvento.dhEvento)+
GetUTC(CodigoParaUF(Evento.Items.InfEvento.cOrgao), Evento.Items.InfEvento.dhEvento));
No Caso, o cOrgao é 91(Ambiente Nacional) e a Função GetUTC está retornando UTC -3:00 - Brasília.
Por padrão a Variável ModoDeteccao está igual a tzPCN
Estou sem nenhum XML para testar agora, mas amanhã irei testar com este Ajuste abaixo:
...Configuracoes.WebServices.TimeZoneConf.ModoDeteccao := tzSistema;
Desta forma eu acredito que irá retornar UTC -4:00 - Cuiabá.
Sem mais para o momento,
Atenciosamente.