Notícias:

SMF - Just Installed!

Main Menu

Posts recentes

#11
Lista de Bugs / Erro na função string.compile(...
Último post por rafael - Novembro 08, 2018, 02:01:04 PM
Boa tarde,

Recentemente precisei compilar os fontes dos meus programas e me deparei com a seguinte situação:

segundo o manual para compilar uma string:

funcao mostre()
    imprima("123testando")
fim

s = string.compile (mostre)
tent = tente (carregue (s) )


///////--------
Aqui se eu chamar a função tent() ele vai imprimir: 123testando
Até aqui tudo bem.

O problema aqui é que ele compila apenas a função e não aceita strings de fora da função.
Eu compilei uma função e salvei em um arquivo e tentei rodar em outro computador
Mas ele roda apenas as funções, tudo que for string fica de fora e ele tenta buscar no outro computador.

Eu consegui resolver usando a biblioteca reg:

   reg.compile( ArqTemp, FuncaoASerCompilada() )


   local n = carreguearquivo(ArqTemp)

Agora eu tenho dentro da função n() tudo que salvei em FuncaoASerCompilada()

Mas não entendi porque não funcionou na função string.compile() sem precisar salvar o arquivo

Resumindo: a função string.compile() armazena a função para se executada depois
e a função reg.compile() armazena o retorno da função a ser compilada, neste caso consigo salvar uma tabela ou qualquer coisa em bytecode

???
#12
Materiais / Prisma1.0.104.deb <-- pacote p...
Último post por rafael - Outubro 23, 2018, 06:00:42 PM
Este pacote foi compilado em ubuntu16.04 amd64

Tome cuidado ao instalar, vai dar conflito caso a libreadline6 já esteja instalada.

Para instalar digite:

sudo dpkg -i prisma-1.0.104.deb

se você já tiver a libreadline6 então terá que rodar o comando:

sudo dpkg -i --force-all prisma-1.0.104.deb

dessa maneira ele vai sobrescrever essa biblioteca:


https://drive.google.com/open?id=1bNusUY6i44wg7ZdDWLYy1qKiqxmbRNYK
#13
Discussões Gerais sobre a linguagem / libreadline6 aumentar suporte ...
Último post por rafael - Outubro 23, 2018, 05:38:06 PM
Boa noite Adalberto,

Recentemente tentei compilar o prisma no debian9

Nos repositórios não existe libreadline6

Já está na versão 7

Não consegui compilar por causa disso. então tive que copiar essa lib do ubuntu.

Assim que puder coloca o suporte para versões mais novas por gentileza.

Também a libmysqlclient-dev sugiro que coloque suporte para a libmariadbclient-dev

Abraço!
#14
Lista de Bugs / Just want to say Hi!
Último post por Cortney475 - Setembro 13, 2018, 04:51:38 PM
Thank you! Ample posts.

Have a look at my weblog :: mouse click the next document
#15
Lista de Bugs / Re:Classe fpdf não escreve dua...
Último post por adalberto - Março 15, 2018, 05:56:26 PM
Blz.

Só não esqueça de fechar o arquivo aberto na linha 1495 a 1497 depois de fazer a leitura. (Se bem que o coletor de lixo deve fazer isso, mas é mais seguro fechá-lo com a:feche(); )

#16
Lista de Bugs / Re:Classe fpdf não escreve dua...
Último post por rafael - Março 15, 2018, 03:41:17 AM
Oi Adalberto, mais uma vez obrigado.

Com sua biblioteca não consegui.

Mas fui modificando a minha e achei a solução baseada na sua:

a linha defeituosa era

  • info.i = este._PegueTamanhoDaTabela(este.m_imagens)


Anexo o exemplo.
#17
Lista de Bugs / Re:Classe fpdf não escreve dua...
Último post por adalberto - Março 13, 2018, 04:51:18 PM
Teria que ver o seu código, e estou até sem muito tempo.

Se as imagens acabam ficando sobrepostas, será que não é um erro de calcular as posições delas?

Olha, há um tempo, quando estava fazendo as libs jpeginfo e outras eu consegui colocar imagens jpg e tenho até um exemplo, o problema é que a lib fpdf que tenho aqui não vai ser igual a sua, fiz umas modificações e ainda nem traduzi os comando ainda.

Veja o exemplo: (segue em anexo para baixar!)


//basico

local fpdf = inclua'fpdf';
local jpg = inclua'jpginfo';

local pdf = fpdf:novo();

pdf:AdPagina();

pdf:SetFont('Arial','B',12)
    // Background color
pdf:SetFillColor(200,220,255)
    // Title
pdf:Cell(0,6,"Exemplo de imagem",0,1,'C',verdadeiro)
    // Line quebre
pdf:Ln(4)
pdf:Cell(4,10,'Olá como vai você?');
pdf:Imagem("casal.jpeg",5,30,100,100);//insere a imagem

pdf:AdPagina();
local info = jpg.info('prisma.jpg');
pdf:SetFont('Arial','B',12)
pdf:SetFillColor(200,220,255);
pdf:Cell(0,6,"prisma.jpg " .. info.larg ..'x'.. info.alt,0,1,'L',verdadeiro);
pdf:Imagem('prisma.jpg',5,22,info.larg/6, info.alt/6);

//--------------------------------------------
pdf:AdPagina();

pdf:SetFont('Arial','B',12)
    // Background color
pdf:SetFillColor(200,220,255)
    // Title
pdf:Cell(0,6,"Exemplo de imagem",0,1,'C',verdadeiro)
    // Line quebre
pdf:Ln(4)
pdf:Cell(4,10,'Olá como vai você?');
pdf:Imagem("logo.png",5,30,100,100);//insere a imagem


pdf:Output("zzbasico.pdf"); //salva o arquivo pdf




Obs.: Nem toda imagem png dá certo, imagens jpg e ppm tem mais compatibilidade.

Tenta adaptar aí, depois retorna aqui se não der certo ok.

(Baixe os arquivos em anexo)
#18
Lista de Bugs / Re:compilador pric não esconde...
Último post por adalberto - Março 13, 2018, 04:23:45 PM
Bom dia,

O pric assim como o prismac não ofusca as constantes, acredito que nem em C isso seja possível.

Há um conjunto de funções de encriptação aes que peguei de uma biblioteca em Lua, com ele você pode encriptar os dados (strings) antes de inserir no código fonte do programa e para usar esse dado basta decriptá-lo antes de imprimi-lo.

Ou você pode simplesmente usar a base 64 ou hex se não exigir muita segurança.

Então esses são os passos:

1 - Codifique o dado com um programa ou função separado.
2 - cole a saída entre duplos colchetes atribuindo em uma variável no seu código fonte.
3 - ao imprimir essa variável apenas decripte antes.

Estou meio tumultuado de serviço, mas é uma boa ideia acrescentar uma forma de encriptar strings e constantes.

AES:  http://linguagemprisma.br4.biz/blog/modo_texto/aes-encriptacao-e-decriptacao-de-dados/

use base64    string.base64()  /  string.dec_base64();

use hexadecimal string.hex() / string.dec_hex();

exemplos:


local aes = inclua("aes");

//modos de encriptacao: aes.MODOECB, aes.MODOCBC, aes.MODOOFB, aes.MODOCFB
//tamanho senhas: aes.AES128, aes.AES192, aes.AES256

local senha =  "asdfadsfaljaASDFASDFAsdfasd";
local txt =  "Linguagem Prisma!!!";

local enc = aes.encripte(senha,txt, aes.AES256, aes.MODOCFB);

poe'---------------------------------\n\n';

imprima("ENC:", enc);

imprima("DEC:", aes.decripte(senha,enc,aes.AES256,aes.MODOCFB) );




Prisma 1.0.104  linguagemprisma.br4.biz (jul 2017)
> a = string.hex('olá');
> imprima(a)
6f6cc3a1
> b = string.dec_hex(a);
> imprima(b);
olá
> a = string.base64('olá');
> imprima(a);
b2zDoQ==
> b = string.dec_base64(a);
> imprima(b);
olá
>



Espero ter dado um caminho, até mais.


#19
Lista de Bugs / Classe fpdf não escreve duas i...
Último post por rafael - Março 13, 2018, 12:23:07 AM
Oi Adalberto

Vê se você me ajuda:

Tentei usar o fpdf pra gerar um arquivo de várias páginas com o mesmo cabeçalho e o mesmo rodapé.
No cabeçalho uma imagem o no rodapé outra.

Se for uma página funciona, mas se for mais as imagens repetem ou ficam cruzadas, as vezes nem aparece, as vezes só aparece uma.

Tem uma noção do que pode ser ?
#20
Lista de Bugs / compilador pric não esconde pa...
Último post por rafael - Março 12, 2018, 10:10:29 AM
Bom dia,

Estava querendo esconder o meu código fonte incluindo a parte textual do html.

Mas o compilador só compila a parte da linguagem.

Existe a possibilidade de descaracterizar o restante do código?

anexo uma imagem como o exemplo.