Página 1 de 1

EXE base64 com 4MB

Enviado: 29 Out 2024 10:36
por JoséQuintas
Estou querendo deixar o EXE abaixo de 4MB em base64.
Alguma idéia do que podemos remover do fivewin ?

EXE base64 com 4MB

Enviado: 29 Out 2024 10:46
por JoséQuintas
Consegui chegar a 3.3MB, mas em base64 dá quase 4.5MB

EXE base64 com 4MB

Enviado: 29 Out 2024 12:03
por Kapiaba
O que usastes, este comando:

Código: Selecionar todos

/LARGEADDRESSAWARE
ou:
-GF:LARGEADDRESSAWARE
https://docwiki.embarcadero.com/RADStud ... mmand_Line

Regard saludos.

EXE base64 com 4MB

Enviado: 29 Out 2024 16:33
por JoséQuintas
São coisas diferentes.

Compilando com mngw, o programa harbour 32 bits pode acessar 4GB de Ram numa máquina 64 bits.
Isso foi sendo alterado no mingw, 2GB, 3GB, e em versões novas 4GB.
Para blinker e visual studio, parece que precisa disso que mencionou, senão só acessa 2GB.

A questão deste post é outra coisa: quero reduzir o tamanho do EXE.
Preciso que ele fique no máximo com 3MB.
Pra isso, só removendo componentes fivewin da lib.

EXE base64 com 4MB

Enviado: 29 Out 2024 17:17
por JoséQuintas
Por enquanto removi ADO, MySQL, Postgres, ODBC, RichEdit, Preview, Scintilla.
Num primeiro teste removendo, no final sem remover mas com mesmo efeito.

EXE base64 com 4MB

Enviado: 29 Out 2024 17:23
por Kapiaba
Ai, é simples, Eu uso:

Código: Selecionar todos


C:\PECOMPACT\PEC2 /NB /EMP:Y /TM:Y /CR:Y /MC WINORCAM.Exe

Ou:

C:\UPX4\UPX.EXE --lzma WINORCAM.exe

Regards, saludos.

EXE base64 com 4MB

Enviado: 29 Out 2024 17:40
por Kapiaba
https://upx.github.io/

PECOMPACT é pago. Muito melhor que o UPX.exe

Regards, saludos

EXE base64 com 4MB

Enviado: 29 Out 2024 17:56
por JoséQuintas
Só consegui isso, uns 140kb.
Deixar assim mesmo.
Muito trabalho pra pouca diferença.

Código: Selecionar todos

29/10/2024  17:51         3.464.696 jpa.exe
29/10/2024  17:53         3.324.408 jpa.exe

EXE base64 com 4MB

Enviado: 29 Out 2024 18:45
por Kapiaba

Código: Selecionar todos

Sem compactar com o PECOMPACT.exe

24.537.088 PLENOINDW.exe

Com Compactação usando o PECOMPACT.exe

10.215.424 PLENOINDW.exe

Vantagem 2, programa fica protegido contra invasão.
Regards, saludos.

EXE base64 com 4MB

Enviado: 29 Out 2024 19:16
por JoséQuintas

Código: Selecionar todos

d:\fontes\integra>upx -d jpa.exe
                       Ultimate Packer for eXecutables
                          Copyright (C) 1996 - 2024
UPX 4.2.4       Markus Oberhumer, Laszlo Molnar & John Reiser    May 9th 2024

        File size         Ratio      Format      Name
   --------------------   ------   -----------   -----------
  12267512 <-   3636728   29.65%    win32/pe     jpa.exe

Unpacked 1 file.

d:\fontes\integra>upx --lzma jpa.exe
                       Ultimate Packer for eXecutables
                          Copyright (C) 1996 - 2024
UPX 4.2.4       Markus Oberhumer, Laszlo Molnar & John Reiser    May 9th 2024

        File size         Ratio      Format      Name
   --------------------   ------   -----------   -----------
  12267512 ->   3032568   24.72%    win32/pe     jpa.exe
Valeu, isso do upx resolve.
Agora é descobrir como isso entra no hbmk2.

EXE base64 com 4MB

Enviado: 29 Out 2024 19:37
por JoséQuintas
Resolvido no hbmk2 assim:
Criei o upx.exe que chama o upx_exe.exe" )
Tem que ser console -gtwin, senão continuam as coisas antes de terminar a compressão.

Código: Selecionar todos

FUNCTION Main(...)

   LOCAL aParams, Item, cFile := ""

   aParams := hb_AParams()
   FOR EACH Item IN aParams
      IF ".exe" $ Lower( Item )
         cFile := Lower( Item )
         EXIT
      ENDIF
   NEXT
   IF ! Empty(  cFile )
      RUN ( "UPX_EXE.EXE --lzma " + cFile )
   ENDIF

   RETURN Nil

EXE base64 com 4MB

Enviado: 29 Out 2024 20:00
por JoséQuintas
Nem quero entender.....
Ficou menor ainda.
Processo completo, como sempre, digito C <ENTER>
c
d:\fontes\build\build.exe
HBMK2 JPA.HBP -w3 -es2 -m -n -strip -compr -workdir=c:\temp -q -Id:\fontes\build\

hbmk2: Processing environment options: -comp=mingw
hbmk2: Processing configuration: d:\harbour\bin\hbmk.hbc
hbmk2: Triggered by #require directive: hbziparc.hbc
hbmk2: Triggered by #require directive: hbtip.hbc
Harbour 3.2.0dev (r2410180556)
Copyright (c) 1999-2024, https://harbour.github.io/

Ultimate Packer for eXecutables
Copyright (C) 1996 - 2024
UPX 4.2.4 Markus Oberhumer, Laszlo Molnar & John Reiser May 9th 2024

File size Ratio Format Name
-------------------- ------ ----------- -----------
11642368 -> 2872320 24.67% win32/pe jpa.exe

Packed 1 file.

if exist jpa.exe call assina.bat jpa.exe

For %a in (jpa.exe) do call \tools\signtool\assina %a

call \tools\signtool\assina jpa.exe
Done Adding Additional Store
base64.png

EXE base64 com 4MB

Enviado: 29 Out 2024 20:15
por JoséQuintas
Valeu mesmo.

Agora começa minha festa no aplicativo.

EXE base64 com 4MB

Enviado: 30 Out 2024 10:43
por Kapiaba
Muito bom! Parabéns! Depois, baixe o PECompact e teste. Verás que o PECompact é muito mais SEGURO que o UPX. Notarás, que alguns ANT-VÍRUS, vão recusar o seu .EXE, dará FALSO POSITIVO com o UPX, já com o PECompact, isto não acontecerá, pois o PECompact "assina" o .EXE e o anti-vírus não "chia".

https://bitsum.com/portfolio/pecompact/

Abs.

Regards, saludos.

EXE base64 com 4MB

Enviado: 30 Out 2024 11:25
por JoséQuintas
Uso o UPX há muito tempo.
Só vai mudar pra compactar mais.
Mas vou ficar de olho.