Usar DLL 32 bits em Harbour 64 bits

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Usar DLL 32 bits em Harbour 64 bits

Mensagem por JoséQuintas »

Alguém aí já fez isso?
Usar DLL 32 bits em Harbour 64 bits?
Num teste rápido aqui parece que não foi, mas pode depender de algum detalhe que não levei em conta.

Por enquanto não é problema, mas pode ser num futuro próximo, quando obrigatoriamente tiver que usar Harbour 64 bits pra arquivos acima de 4GB.
No meu caso... não vai ter mais DBF, mas o backup do MySQL vai acabar chegando nisso.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
susviela@bol.com.br
Usuário Nível 3
Usuário Nível 3
Mensagens: 236
Registrado em: 30 Jun 2017 11:17
Localização: São José / SC
Contato:

Usar DLL 32 bits em Harbour 64 bits

Mensagem por susviela@bol.com.br »

Depois de tanto apanhar com esses 32 / 64 da vida com o SQLite, ficou para mim a definição:
W-32 + sqlite32 + HB 32 - OK
W-64 + sqlite32 + HB 32 - FALHA

Como não uso HB 64, ainda não sei se vai funcionar W-64 + sqlite64 + HB 64

Com a palavra os universitários.
.
.
"E quando você perder o controle, colherá o que plantou."
=========================================
Carlos Alberto Nunes #Susviela
Site: https://www.PowerInformatica.com.br
=========================================
Blog xBase: https://programandoxbase.wordpress.com/
Blog TI: https://susviela.wordpress.com

( #ProgramandoxBase #AllxBase )
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Usar DLL 32 bits em Harbour 64 bits

Mensagem por JoséQuintas »

No caso do ADO sem problemas.

Harbour 32 bits, instala-se ODBC MySQL 32 bits
Harbour 64 bits, instala-se ODBC MySQL 64 bits

No caso de capicom, msxml5 e RMChart.... só tem versão 32 bits.
Significa Harbour 32 bits

No caso de Harbour 64 bits... falta descobrir o que fazer, ou fazer mais testes.
Talvez ajuste na hbwin, talvez ajuste no Windows, talvez não seja possível.

No seu caso, verifique o que usa pra SQLite, se tem versão pra 64 bits.
Se usa DLL pra gerar SQLLite, procure DLL 64 bits.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
susviela@bol.com.br
Usuário Nível 3
Usuário Nível 3
Mensagens: 236
Registrado em: 30 Jun 2017 11:17
Localização: São José / SC
Contato:

Usar DLL 32 bits em Harbour 64 bits

Mensagem por susviela@bol.com.br »

Eu já nem estresso mais, com 64 / 32 ...
houve uma "fake news" que A Micro$oft estava matando os APP 32, mas talvez até acontecer isso eu já nem consiga ver as letras no monitor ... Hehehehe.

Faço em 32 ... já era.
.
.
"E quando você perder o controle, colherá o que plantou."
=========================================
Carlos Alberto Nunes #Susviela
Site: https://www.PowerInformatica.com.br
=========================================
Blog xBase: https://programandoxbase.wordpress.com/
Blog TI: https://susviela.wordpress.com

( #ProgramandoxBase #AllxBase )
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

Usar DLL 32 bits em Harbour 64 bits

Mensagem por bencz »

Bom dia!
Simplesmente não funciona... de uma lida nesse material: https://docs.microsoft.com/en-us/window ... dfrom=MSDN
Imagem
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Usar DLL 32 bits em Harbour 64 bits

Mensagem por JoséQuintas »

On 64-bit Windows, an out-of-process 32-bit COM server can communicate with a 64-bit client, and an out-of-process 64-bit COM server can communicate with a 32-bit client. Therefore, if you have a 32-bit DLL that is not COM-aware, you can wrap it in an out-of-process COM server and use COM to marshal calls to and from a 64-bit process.
Aí diz que se for COM Server funciona.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

Usar DLL 32 bits em Harbour 64 bits

Mensagem por bencz »

José, boa tarde!
No caso do COM, sim... pois existe uma camada entre o executavel e a DLL que 'neutraliza' o acesso das funções da DLL
Imagem
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Usar DLL 32 bits em Harbour 64 bits

Mensagem por JoséQuintas »

bencz escreveu:No caso do COM, sim... pois existe uma camada entre o executavel e a DLL que 'neutraliza' o acesso das funções da DLL
Pois é, esse é o ponto.
Por enquanto ainda não funcionou.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Mario Mesquita
Usuário Nível 4
Usuário Nível 4
Mensagens: 613
Registrado em: 08 Dez 2009 13:47
Localização: Rio de Janeiro

Usar DLL 32 bits em Harbour 64 bits

Mensagem por Mario Mesquita »

Boa tarde a todos.

Esse limite de 4GB se aplica também às tabelas DBF? OU seja, em 32 bits o limite máximo de tamanho de um DBF é 4GB.

E para acima desse limite, só em 64 bits? Mas no caso deve ser a rede toda com máquinas 64 bits ou pode ter máquinas 32 bits lendo um servidor 64 bits?

Pra mim, que tem bases de pequeno e médio porte 4GB é muito, mas é bom saber.

Desde já, agradeço a dica dos amigos.

Saudações,
Mario.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Usar DLL 32 bits em Harbour 64 bits

Mensagem por JoséQuintas »

Mario Mesquita escreveu:Esse limite de 4GB se aplica também às tabelas DBF? OU seja, em 32 bits o limite máximo de tamanho de um DBF é 4GB.
Partição FAT: limite 2GB
Partição NTFS: limitado ao sistema operacional 32/64 bits

Windows 32 bits: limite 4GB pra disco ou memória
Windows 64 bits: nem sei o limite

Harbour 32 bits no Windows 64 bits: limite 4GB pra disco ou memória

Rede: mesmo se o servidor for 64 bits, o terminal 32 bits vai ter as limitações de 32 bits

SQL/MySQL: esse trabalha diferente, porque geralmente não vém a base inteira para o terminal, somente parte dela.
Mas num terminal de 32 bits já não poderia ser feito um backup, porque teria mais de 4GB.

De forma simples é assim:
O número interno é representado por 32 bits.
O maior número possível representado por 32 bits é.... o limite de 4GB.
Talvez até acesse o arquivo, mas não o arquivo inteiro.

Tipo... acessa a posição 1, 2, 3, 4.... 4GB.... mas se não consegue indicar número maior que 4GB, não vai conseguir acessar o resto.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Mario Mesquita
Usuário Nível 4
Usuário Nível 4
Mensagens: 613
Registrado em: 08 Dez 2009 13:47
Localização: Rio de Janeiro

Usar DLL 32 bits em Harbour 64 bits

Mensagem por Mario Mesquita »

Boa tarde a todos.

Partição FAT hoje poucos usam, a maioria já é NTFS não é? Mesmo assim, máquinas com 32 bits criam essa barreira dos 4GB.

Então só uma rede toda 64 bits pode superar os 4GB né?

Bom saber dessas coisas, apesar de ser um limite bem alto pra mim, por enquanto.

Valeu, mestre.

Abraço,
Mario.
Responder