Bom dia, pessoal.
Estou tentando resolver uma coisa sem sucesso até agora: Eu tenho umas imagens no arquivo de recursos (.RC) da HMG. Nos objetos, como Image, vc pode pega-los via programa. Também os uso na MiniPrint, para imprimir em formulários.
Meu problema é que estou modelando um PDF usando aquela lib HPDF. Aparentemente na proprieddade Picture não pega a imagem declarando o nome dela no arquivo .RC. Nos exemplos da HMG só tem referência direta, tipo "MeuJPG.jpg".
Então estou tentando achar alguma função que adquira a imagem para tentar botar na Picture por variável. Tentei algumas mas não consegui até agora. Já tentei até pela IA mas ela sugere funções que o compilador não reconhece, deve ser de algum fork.
Se alguém já teve essa experiência e puder compartilhar, agradeço.
Saudações,
Mario.
Aquisição de arquivo JPG em arquivo .RC
Moderador: Moderadores
- Mario Mesquita
- Usuário Nível 4

- Mensagens: 613
- Registrado em: 08 Dez 2009 13:47
- Localização: Rio de Janeiro
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Aquisição de arquivo JPG em arquivo .RC
Atenção que na harupdf tem função diferente pra arquivo físico ou da memória.
Uso resource em RC, em MySQL e também no programa.
Depende da finalidade de uso, e da necessidade de existência.
Exemplos do meu uso:
- ícones das telas, em resource, o programa precisa funcionar mesmo não existindo MySQL
- arquivos básicos do SQL, pra criar os arquivos básicos do SQL precisam existir no programa, uso esse pragma
- Outros arquivos e imagens, salvo no MySQL, incluindo arquivos pra harupdf.
O pragma, na hora da compilação, acrescenta o arquivo físico como parte do EXE.
Deixo tudo num único PRG, assim dá pra olhar o tamanho ocupado por resource.
Se ficar espalhando pragma pelos fontes, pode acabar colocando arquivo repetido, e gastando espaço à toa.
Deixando tudo junto, pode decidir depois quais pode salvar em MySQL ou outra alternativa.
Uso resource em RC, em MySQL e também no programa.
Depende da finalidade de uso, e da necessidade de existência.
Código: Selecionar todos
/*
ZE_RESOURCE - RESOURCES
2016.05.20 - José Quintas
*/
#include "josequintas.ch"
FUNCTION ze_LoadBinary( cFileName )
LOCAL cTxt
cFileName := Lower( cFileName )
DO CASE
CASE cFileName == "jpsenha.sql"; #pragma __binarystreaminclude "sql\table\jpsenha.sql" | RETURN %s
CASE cFileName == "jpbinary.sql"; #pragma __binarystreaminclude "sql\table\jpbinary.sql" | RETURN %s
CASE cFileName == "jpconfi.sql"; #pragma __binarystreaminclude "sql\table\jpconfi.sql" | RETURN %s
CASE cFileName == "jpreguso.sql"; #pragma __binarystreaminclude "sql\table\jpreguso.sql" | RETURN %s
OTHERWISE
cTxt := ze_binaryFromSQL( cFileName )
ENDCASE
RETURN cTxt
- ícones das telas, em resource, o programa precisa funcionar mesmo não existindo MySQL
- arquivos básicos do SQL, pra criar os arquivos básicos do SQL precisam existir no programa, uso esse pragma
- Outros arquivos e imagens, salvo no MySQL, incluindo arquivos pra harupdf.
O pragma, na hora da compilação, acrescenta o arquivo físico como parte do EXE.
Deixo tudo num único PRG, assim dá pra olhar o tamanho ocupado por resource.
Se ficar espalhando pragma pelos fontes, pode acabar colocando arquivo repetido, e gastando espaço à toa.
Deixando tudo junto, pode decidir depois quais pode salvar em MySQL ou outra alternativa.
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/
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/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Aquisição de arquivo JPG em arquivo .RC
Só pra lembrar:
A compilação do harbour transforma em fonte C, e depois o fonte C é compilado gerando o objeto (.o em mingw)
Não tem limite, mas pra que ficar aumentando o tamanho do EXE com coisas que pode baixar depois.
A compilação do harbour transforma em fonte C, e depois o fonte C é compilado gerando o objeto (.o em mingw)
Não tem limite, mas pra que ficar aumentando o tamanho do EXE com coisas que pode baixar depois.
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/
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/