The procedure entry point ?Sl_ResetDevice@@YGHPAX@Z could not be located in the dynamic link library

perguntou em GigaERP aplicativo por sergio
reclassificado por sergio
Foi acionado uma função, nesse caso ?Sl_ResetDevice@@YGHAX@Z que não pode ser encontrada na  C:\Windows\SYSTEM32\MP2032.DLL

1 Resposta

+1 voto
respondida por sergio
editado por sergio

1) A função que foi mencionada na questão é um exemplo, poderia ter sido outro nome de função. A primeira ação a ser realizada é verificar se a DLL encontra-se no lugar certo, dependendo do sistema operacional (32/64 bits) e se é a versão exigida para a release em execução do GigaERP.

2) Se o item 1 estiver ok e continuar não funcionando, há necessidade de verificar se a DLL tem dependência de outra DLL para sua execução. 

No caso da função  ?Sl_ResetDevice@@YGHPAX@Z   ela não estava sendo executada diretamente pelo GigaERP, mas pela MP2032.DLL e, tal função deveria estar na SiUSBXp.dll; porém, no problema ocorrido, o usuário havia formatado o computador e a SiUSBXp.dll que estava lá, não era o da versão correta. Foi substituída pela versão existente na nossa release (embora já se tinha executado o update das dlls locais - a SiUSBXp.dll não foi atualizada). Essa SiUSBXp.dll eventualmente pode ser substituida por alguma outra versão, dependendo do que o usuário instalar na máquina dele.

A  SiUSBXp.dll pode ser encontrada via download clicando aqui

Sendo necessário, há um software que faz análise de dependência dado certa .dll, que pode ajudar em casos semelhantes. Nesse caso, é interessante envolver um desenvolvedor para uma avaliação mais adequada. O software pode ser encontrado em http://www.dependencywalker.com/

...