Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 3703 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Pessoal,

 

Faço parte de uma equipe que utiliza o componente ACBR para emissão de NFe, minha função na equipe resume-se a manutenção do instalador/atualizador do sistema, onde tratamos os problemas de instalação/atualização do sistema nas plataformas Windows suportadas.

 

Nos últimos tempos temos encontrado problemas ao registrar a msxml5.dll em estações Windows x64.

 

Pesquisando, verifiquei que esta dll na verdade faz parte do MS Office e não deveria ser distribuída com aplicativos (que não interajam diretamente com o office).

Tanto que esta dll não é nem documentada em sua totalidade, justo por esta restrição de uso.

 

O recomendado é utilizar a versão anterior, msxml4 SP2 ou a versão 6.

 

Seria possível trocar a versão da dll em nosso projeto para uma das duas citadas? ou a troca comprometeria a compatibilidade dos componentes ACBR?

 

Fontes:

http://support.microsoft.com/kb/269238/pt-br

http://en.wikipedia.org/wiki/MSXML

Postado

Olá Juliomar,

 

Não cheguei a testar pois não tenho ambiente funcional para tal, mas se for o caso, talvez seja possível providenciar por aqui...

O foco é a facilidade de liberar dll´s Microsoft com o processo correto de instalação,  registro, etc, o que acaba facilitando o processo para a comunidade.

 

Alguem na comunidade tem a possibilidade de realizar testes de imediato?

Se possível a ajuda dos amigos, agradeço.

 

Vou ver o que consigo por aqui.

 

Desde já obrigado :D

  • 1 ano depois...
Postado (editado)

Acho que somente testando para poder saber meu amigo!

chegou a fazer?

 

 

Olá Juliomar,

 

Não cheguei a testar pois não tenho ambiente funcional para tal, mas se for o caso, talvez seja possível providenciar por aqui...

O foco é a facilidade de liberar dll´s Microsoft com o processo correto de instalação,  registro, etc, o que acaba facilitando o processo para a comunidade.

 

Alguem na comunidade tem a possibilidade de realizar testes de imediato?

Se possível a ajuda dos amigos, agradeço.

 

Vou ver o que consigo por aqui.

 

Desde já obrigado :D

 

Bom dia colegas.

Também estou passando por problemas com as DLLs MSXML, no Terminal Server, e em sessão local no Server 2008.

Observamos aqui na empresa, e acontecem telas brancas/travamentos no sistema justamente quando algum recurso na unit ACBrNFeUtil, como AssinarMSXML/ValidarMSXML, ou no retorno, observamos bastante, e parece ser algo relacionado a DLL (não do componente) com o sistema operacional, pois em 32 Bits funciona perfeitamente.

Não é sempre que as telas brancas acontecem, mas acontecem.

 

A respeito do teste, realizei testes com a MSXML6 mas obtive alguns erros, como OLESysError, e não encontrar também referências a  algumas funções da DLL (vinculo dinâmico), etc.

 

No aguardo.

Muito obrigado.

Editado por Leandro Araújo
  • Curtir 1

Leandro Araújo, Analista de Sistemas.

Postado (editado)

Uma solução mais interessante, é a de utilizar o ACBrNFeMonitor em uma estação 32 Bits, para assinar e enviar os .XML's.

Mas acho que também poderia ser pautado a troca da versão da DLL, ou não?  :???:

Obrigado pessoal.

:mrgreen:

Editado por Leandro Araújo

Leandro Araújo, Analista de Sistemas.

Postado (editado)

Bom dia pessoal.

Apesar do post ser antigo, gostaria de deixar aqui minha experiência com relação ao uso da DLL MSXML na sua versão 5.

 

Em seções locais, no Windows XP e Windows 7 34/64 Bits, funcionou sem crashes, tudo ok.

Mas ao utilizar em seções remotas e no Windows Server (No nosso caso, o 2008 R2), tivemos travamentos, investigando bem, observamos que sempre ocorria quando se tentava realizar a Assinatura e/ou Validação do arquivo .XML, mais precisamente quando na unit ACBrNFeUtil, tentava utilizar os recursos da devida DLL,

digamos a função ValidaMSXML:

function ValidaMSXML(XML: AnsiString; out Msg: AnsiString; const APathSchemas: string = '';
                     AModeloDF: TpcnModeloDF = moNFe; AVersaoDF: TpcnVersaoDF = ve200): Boolean;

E a função AssinarMSXML:

function AssinarMSXML(XML : AnsiString; Certificado : ICertificate2; out XMLAssinado : AnsiString): Boolean;

Ao utilizar algum recurso COM, algo assim, ocorre algum conflito interno, não sei exatamente.

 

Resolvemos decidindo passar a compilar o ACBrNFe para utilizar OpenSSL/LibXML2 no lugar de Capicom/MSXML, sendo a única limitação, o suporte a certificado A3, dai nesse caso continuamos com o Capicom ou utilizamos o ACBrNFeMonitor para o A3.

 

Realizamos todos os testes no sistemas citados acima, e funcionou perfeitamente, emitimos uma grande quantidade de NFC-e's, fazendo testes de estresse na aplicação e tudo certo até o momento.

 

Conforme já dito por alguns colegas aqui no fórum, pelo que se dá a entender, a versão 5.0 da MSXML é limitada a uso do aplicativos da suíte Office da Microsoft, recomendam utilizar a versão 4.0 ou a 6.0 (Que ao que tudo indica, se adapta as políticas do sistema operacional onde está instalada).
Olhem o link, por gentileza:

http://support2.microsoft.com/kb/269238/pt-br

 

Fica aqui meu feedbak com relação a esse erro.

 

Desde já, muito obrigado ao pessoal do ACBr, pelo excelente trabalho

Editado por Leandro Araújo
  • Curtir 1

Leandro Araújo, Analista de Sistemas.

Postado

Pessoal, 

Também estamos pasando por isso com alguns clientes, e estamos simples desregistrando a DLL e registrando novamente para poder pasar, conforme mostra abaixo:

 
regsvr32 %windir%\SysWOW64\capicom.dll /u
regsvr32 %windir%\SysWOW64\msxml5.dll /u
regsvr32 %windir%\SysWOW64\msxml6.dll /u
 
ECHO *** Registrando as DLLs x64 ***
regsvr32 %windir%\SysWOW64\capicom.dll
regsvr32 %windir%\SysWOW64\msxml5.dll
regsvr32 %windir%\SysWOW64\msxml6.dll
 
Leonardo Machado
  • Curtir 1
Postado

 

Pessoal, 

Também estamos pasando por isso com alguns clientes, e estamos simples desregistrando a DLL e registrando novamente para poder pasar, conforme mostra abaixo:

 
regsvr32 %windir%\SysWOW64\capicom.dll /u
regsvr32 %windir%\SysWOW64\msxml5.dll /u
regsvr32 %windir%\SysWOW64\msxml6.dll /u
 
ECHO *** Registrando as DLLs x64 ***
regsvr32 %windir%\SysWOW64\capicom.dll
regsvr32 %windir%\SysWOW64\msxml5.dll
regsvr32 %windir%\SysWOW64\msxml6.dll
 
Leonardo Machado

 

 

Olá.

Sim, também "desregistramos" e registramos novamente, mas depois de um tempo volta novamente os problemas.

Obrigado.

Leandro Araújo, Analista de Sistemas.

  • Este tópico foi criado há 3703 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.