CONTROLES SOMEM.. TELA BRANCA

FBGSYSTEMS 18/11/2015 09:54:48
#454096
Bom dia galera.
Um sistema meu tem dado um problema. eventualmente ele para de funcionar sem causa nenhuma, ou entao da mensagem no windows que o Programa parou de Responder, e obriga o usuario a fecha-lo.
Ja rodei o instalador novamente e nada.
Reparei que dois dos meus clientes que estao com este problema usam Corel Draw. Alguem ja passou por isso ?
KERPLUNK 18/11/2015 10:11:45
#454098
VB6 e Corel Draw, compartilham algumas DLL[ô]s por causa do recurso de macros do Corel que usa VBA. Uma sugestão, seria mapear as dependências de ambos, usando o Dependency Walker
FBGSYSTEMS 18/11/2015 18:57:06
#454123
Opa KERPLUNK, obrigado pela breve resposta. Nao consegui ver antes.
Dei uma olhada no site mas não entendi como ele funciona.
KERPLUNK 18/11/2015 20:31:23
#454125
é um trabalho de formiguinha. Você abre o executável do seu programa com Dependecy Walker e lista as DLL[ô]s e suas respectivas funções. Depois faça o mesmo com o Corel e veja quais se interpõem. Isso é mais para se certificar mesmo que o problema é esse. Porque solucionar mesmo não vai solucionar.
FBGSYSTEMS 19/11/2015 09:43:35
#454135
Confirmei aqui que apenas quando o corel está aberto que o problema acontece.
Não fiz o teste ainda KERP, porem evidenciou que é isso mesmo.
Não tem nada que eu possa fazer ?
KERPLUNK 19/11/2015 10:09:15
#454138
Infelizmente não muito. Esses conflitos são bem difíceis de serem resolvidos. Uma alternativa, apesar de não recomendada, é instalar DLL[ô]s com as duas versões e especificar no registro do windows quais delas devem ser utilizadas pela sua aplicação, separando assim as DLL[ô]s do Corel e as runtimes da sua aplicação.
FBGSYSTEMS 19/11/2015 11:24:50
#454150
Puts q tenso... consigo achar no regedt a instalação e apontar por exemplo pro caminho da dll no path do meu sistema ?
KERPLUNK 19/11/2015 11:41:22
#454152
Resposta escolhida
Sim, mas é desaconselhável fazer isso. Existe também a possibilidade de portabilizar sua aplicação, mas isso é profundamente ligado à como sua aplicação foi feita e nem sempre é possível. A idéia é simples: cria-se um manifesto da aplicação, informando as DLL[ô]s que devem ser utilizadas por ela ao invés das já registradas no COM. Só conheço uma ferramenta que faz isso de maneira satisfatória e até onde me lembro é paga, é o Side-by-Side Manifest Maker. Só usei uma vez para uma aplicação bem simplificada, sem nenhuma OCX externa e funcionou bem. Mas reforçando, vai depender E MUITO de como sua aplicação é feita.
FBGSYSTEMS 23/11/2015 12:01:01
#454352
Que pessimo isso. Engraçado é que sempre tive clientes que usam o Corel e em 1 semana 2 se queixaram da mesma coisa.
Tópico encerrado , respostas não são mais permitidas