Página 1 de 1

HMG - Imagem BMP não carrega no arquivo Resource .RC

Enviado: 05 Jan 2021 15:50
por microvolution
Tenho as seguintes imagens .BMP:

Código: Selecionar todos

splash.bmp
Tlogin.bmp
Ambos estão anexados ao .EXE através do arquivo .RC:

Código: Selecionar todos

Splashhmg	  BITMAP     I:\SISTEMA\Splash.bmp
Loginhmg            BITMAP     I:\SISTEMA\logo\TLogin.bmp
As funções/procedures que chamam as imagens são praticamente idênticas, exceto no nome delas.
A a do splash é:

Código: Selecionar todos

CreateScreenSplash ("Splashhmg", nDelaySeconds, nAnimateSeconds)
Já a do login é:

Código: Selecionar todos

LOGIN_HMG("Loginhmg")
Observem que aparentemente a forma como são acionadas as funções (ou melhor PROCEDURES) são semelhantes, exceto nos nomes e que no PROCEDURE spalsh tem mais informações.
Agora vejamos como é dentro de cada procedure, no início.
A do splash é:

Código: Selecionar todos

PROCEDURE CreateScreenSplash (cFileName, nDelaySeconds, nAnimateSeconds)
*-------------------------------------------------------------------------------------------*
   LOCAL hBitmap, Image_Width := 500 , Image_Height := 200 , Image_BackColor

   IF HMG_GetImageInfo (cFileName, @Image_Width, @Image_Height, @Image_BackColor) == .F.
       MsgHMGError ("Erro de abertura do arquivo de imagem de 'cFileName'. Programa será encerrado imediatamente." )       
   ENDIF
Já a do login, é a mesma coisa, exceto o que já dissemos, veja:

Código: Selecionar todos

PROCEDURE LOGIN_HMG (TelaLogin)
   LOCAL hBitmap, Image_Width := 450 , Image_Height := 450 , Image_BackColor := 100

   IF HMG_GetImageInfo (TelaLogin, @Image_Width, @Image_Height, @Image_BackColor) == .F.
       MsgHMGError ("Erro de abertura do arquivo de imagem de 'TelaLogin'. Programa será encerrado imediatamente." )
   ENDIF
Bom, ou melhor, mau rsrsrrs
O primeiro procedure CREATESCREENSPLASH () funciona perfeitamente.

Já o segundo que é o LOGIN_HMG() não funciona e, apresenta o erro descrito na linha que contém:

Código: Selecionar todos

       MsgHMGError ("Erro de abertura do arquivo de imagem de 'TelaLogin'. Programa será encerrado imediatamente." )
Se eu colocar no início do módulo que chama a LOGIN_HMG() a seguinte expressão:

Código: Selecionar todos

#define Loginhmg                 hb_DirBase() + "logo\TLogin.bmp"

e se modificar a chamada (tirando as "aspas") ao procedimento, para:

Código: Selecionar todos

LOGIN_HMG(Loginhmg)
... aí, com as 2 alterações funciona.
Só funciona dessa forma, mas pra isso, a imagem TLOGIN.BMP precisa estar na pasta LOGO, não fica indexada dentro do .EXE.
O que faço pra resolver ou onde está o "erro óbivio" que não consigo ver?

HMG - Imagem BMP não carrega no arquivo Resource .RC

Enviado: 05 Jan 2021 16:16
por JoséQuintas
Primeiro ponto importante:

Precisa decidir se vai usar a IDE ou não, infelizmente a IDE tem bugs, e obriga a fazer coisas que NÃO SÃO do Harbour.
Até mesmo os BATs de compilação fazem isso.

Segundo ponto:

O problema é: tentando usar resource

O que interessa:

Não sei ao certo o problema, mas que tal criar uma ou duas funções e já facilitar resolver apenas num único lugar?

Código: Selecionar todos

FUNCTION LoadImageFromResource( cNome, nWidth, nHeight, nBackColor )
FUNCTION LoadImageFromFile( cNome, nWidth, nHeight, nBackColor )
A partir daí, se uma funciona e outra não.... então tem a ver com a informação errada, ou imagem incompatível.

HMG - Imagem BMP não carrega no arquivo Resource .RC

Enviado: 05 Jan 2021 20:00
por microvolution
JoséQuintas escreveu:Precisa decidir se vai usar a IDE ou não, infelizmente a IDE tem bugs, e obriga a fazer coisas que NÃO SÃO do Harbour.
já tentei, mas, não consegui me adaptar bem aos BATs, pois se a IDE já facilita pra que vou arrumar mais confusão. Alguns vão até dizer que é preguiça... não. não tem nada a ver. Mas, preciso melhorar um pouco meu sistema pra sim tentar revender pra alguém que ainda não tenha informatizado, e, com facilidade e rapidez, pois afinal,
já se passaram 5 anos desde que comecei a migração e ainda estou muito agarrado... não posso ficar mais perdendo tempo, pois o que eu fizer daqui pra frente, não "GANHO" tempo e sim "perco" TEMPO, pois ninguém quer mais programas instalados em DESKTOP e sim WEB e CELULAR e ainda, na nuvem.
JoséQuintas escreveu:O problema é: tentando usar resource
como assim? se foi o nobre quem me deu a dica e me ensinou o pouco que sei sobre .RC?
JoséQuintas escreveu: FUNCTION LoadImageFromResource( cNome, nWidth, nHeight, nBackColor )
FUNCTION LoadImageFromFile( cNome, nWidth, nHeight, nBackColor )
Qual finalidade de 2 funções fazendo a mesma coisa, só que com nomes diferentes?
qual o conteúdo delas?

Código: Selecionar todos

FUNCION xxx()
????
return
grato!

HMG - Imagem BMP não carrega no arquivo Resource .RC

Enviado: 05 Jan 2021 20:42
por JoséQuintas
Não uso a lib, então o máximo que posso fazer é recomendar.
Tem lib que pra carregar do resource é diferente de carregar do arquivo, não dá pra usar mesma função.
E se acrescentar parâmetros pra isso, poderia estar complicando.
microvolution escreveu:já tentei, mas, não consegui me adaptar bem aos BATs, pois se a IDE já facilita pra que vou arrumar mais confusão.
Eu odeio todos aqueles BATs, principalmente por saber que não precisa de nenhum.
Mas se usa pela IDE... só precisa saber sobre usar pela IDE.

Voltando à LIB....
Só venho mexendo na parte de compilar, ou corrigir erros de compilação, não faço a menor idéia como se usa.
Só aproveito às vezes algum post pra fazer o teste aqui, se a LIB continua funcionando como deveria, após minhas "mexidas".

Mas em breve volto a colocar a HMG Fork no pacotão...

HMG - Imagem BMP não carrega no arquivo Resource .RC

Enviado: 05 Jan 2021 22:48
por asimoes
Tinha um bug na versão de 20/12 que foi resolvido na versão 21/01
Ainda é versão beta, mas resolveu o problema de image list quando usa imagem no menu, pelo menos essa atualização resolveu, não sei no seu caso

HMG - Imagem BMP não carrega no arquivo Resource .RC

Enviado: 06 Jan 2021 00:04
por microvolution
asimoes escreveu:Tinha um bug na versão de 20/12 que foi resolvido na versão 21/01
uso a HMG 3.5 do Roberto Lopez e não a HMGE ou HMEE rsrsrsrs
nem tenho noção de como funciona, apesar de já ter tentado compilar, vi q os comandos/funções tem algumas diferenças, q não quis pagar pra ver - ainda... quem sabe... mais pra frente ....
primeiro, resolver os problemas que temos... botar, a pasta debaixo dos braços, pendrive no bolso (pra cliente que não tenha acesso a internet), procurar quem ainda não informatizou, e, instalar nosso software com visual WINDOWS (primeira impressão é a que fica)... pra gente não precisar "vender pipoca" - como algum engraçadinho sugeriu um tempo atrás kkkk

HMG - Imagem BMP não carrega no arquivo Resource .RC

Enviado: 06 Jan 2021 10:35
por microvolution
JoséQuintas escreveu:Até mesmo os BATs de compilação fazem isso.
tô aqui tentando então, em respeito à sua pessoa que sempre tem atenção para com "euzinho" aqui...
vamo ver até onde consigo decifrar as mensagens de erro sem incomodar tanto aos amigos professores!

HMG - Imagem BMP não carrega no arquivo Resource .RC

Enviado: 13 Jan 2021 15:50
por microvolution
Interessante que as imagens carregadas pra serem usadas no pushbutton() da gtwvg dentro da hmg funcionaram, mas, logo as 2 imagens que deram usadas na IMAGE da HMG não carregaram... Quem sabe resolver?

HMG - Imagem BMP não carrega no arquivo Resource .RC

Enviado: 18 Jan 2021 17:52
por marcosLP
me metendo onde não fui chamado...quando eu uso BMP´s (raramente prefiro PNG) eu os faço com minimo de resulução possivel sem perder claro a qualidade. E só uso para janelas, botões, etc...menos de uma tela inteira ou um botão muito grande seja em rede ou ShareWorkArea (windows 7, 10, e linux) pois o .RC não carrega arquivos muito grandes. Seria bom é claro que o fizesse porém prefiro levar por ex: uma janela que criado em formato PNG(ou BMP) bem grande numa pasta interna e o sistema a pegar cfe. programação, assim evita sobrecara de memória e sem se preocupar que alguem via lá e mexa na imagem, tanto faz assim eu cobro para refazer as cag...que eles fizeram...simples assim.
abraços
ps: nunca use IDE´s para isso, aprendam a fazer tudo na unha ou automatizar vcs mesmos com seus recursos afinal somos programadores e nossa função é melhorar a nossa propria produção.

anexo: imagem em formato PNG do 4Shields (linka para baixar no grupo minigui do facebook).

HMG - Imagem BMP não carrega no arquivo Resource .RC

Enviado: 19 Jan 2021 11:23
por microvolution
marcosLP escreveu:programação, assim evita sobrecara de memória e sem se preocupar que alguém via lá e mexa na imagem
, pois bem, é assim que estou fazendo com as 2 imagens (tela de login - meia tela e tela de splash), até a gente conseguir reduzir o tamanho delas sem perder qualidade.

Todas as outras imagens estão carregadas pra dentro do .EXE (sistema final), mas, essas 2 que não estão sendo carregadas pelo .RC, eu criei uma pasta e elas estão sendo carregadas manualmente. rsrsrs

Meu nobre professor MarcosLP pela sua contribuição.
Agora,
marcosLP escreveu:anexo: imagem em formato PNG do 4Shields (linka para baixar no grupo minigui do facebook).
essa imagem é do seu sistema ou de algum programa para compressão das imagens? onde é este link do minigui do facebook?