Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Michel Marques

Carregar DLL 16 bits com Delphi 7 ou superior?

Recommended Posts

Estou com um problema a um tempo.

Na empresa onde trabalho eles usam um sistema de terceiros feito em plataforma Win16. E este sistema tem uma DLL de integração, também feita na plataforma Win16.

Quando tento carregar esta DLL com o Delphi 7 ou o 2009 me dá erro de que é uma imagem inválida, mas se tento com o Delphi 1 ele carrega, isto é, não problema na DLL.

Alguém sabe como eu poderia fazer para carregar uma DLL 16-bit com Delphi 7 ou superior?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Michael, pelo menos uma dúvida eu vou tentar lhe explicar.

 

O Delphi 1 carrega normalmente a biblioteca pois também é de 16 bits. O Delphi 7 é de 32 bits por isso não esta conseguindo carregar esta biblioteca.

Esta dúvida que você trouxe é muito interessante. Estou ainda a procura da solução pois me interessa também. Se eu conseguir eu posto aqui, e se você conseguir, poste também.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então. Que não ia carregar eu já imaginava. Pois o Windows separa a utilização da memória de acordo com a plataforma (Win16, Win32, Win64) e o mesmo problema que estou tendo de Win32 acessar Win16 logo teremos de Win64 acessar Win32. E foram criados muito mais aplicativos em Win32 do que em Win16, isto é, a necessidade será grande de tal integração. Mas isto mexe com os registradores, o que complica um pouco mais.

Eu já to quase desistindo. Já to procurando uma solução para isto há uns 4 meses e ainda não consegui solucionar. Este forum foi a minha ultima alternativa.

O material mais confiavel que eu consegui na internet foi no próprio site da Microsoft. Mas eu não consegui os softwares e nem montar o script.

Abaixo segue o link que falei. Derepente você consegue algo.

E valeu pela força.

 

Tutorial MS

http://support.microsoft.com/kb/155763

 

O MASM eu consegui baixar. E acho que o Turbo Borland que tem os outros (exceto o RC.exe).

Se precisar me manda um e-mail que te envio o que achei até o momento.

michel.marques.me@gmail.com

Compartilhar este post


Link para o post
Compartilhar em outros sites

Um, estou lendo o artigo, pelo que eu entendi, deve ser uma biblioteca (dll) de 32 bits com a interface igual (mesmo nome de função e tals), então a sua aplicação faz as chamadas nesta dll e esta por sua vez faz a ponte com a dll de 16 bits. Mas pelo que estou vendo, você precisa conhecer a API (os nome das funções e tals) da dll de 16 bits.

 

 

Em, so uma curiosidade: O que faz essa dll de 16 bits que você esta querendo utilizar?

 

 

 

vou continuar lendo la, se descobrir algo, posto aqui

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então,

Eu trabalho em uma empresa de Logistica que utiliza um sistema da SERPRO para acesso ao SISCOMEX. E este sistema é todo Win16, disponibilizando uma DLL para integração, também Win16.

O problema é que esse sistema é um terminal, e para conectar precisa estar dentro de um grupo de IPs, que neste caso o daqui está. Não consegui utilizar o sistema na minha casa pq n conectou. E isso complica pq aqui no trampo n ta dando p dar muita atenção para isso. As vezes eu paro um para tentar algo. Mas, estão deixando isso um pouco de lado pq já foi gasto muito tempo para tentar e até agora nada.

Já tentei até com o Bruno linchot da Embarcadero que ficou de ver se conseguia algo com uns amigos e não em retornou mais.

Pq eu acho muita sacanagem um compilador boicotar algo tão importante assim.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.