Neke bolj hard-core računalniške reči: del 1

V prvi objavi v seriji dveh objav torej o neki malo bolj “hard-core” računalniški zadevi. Konkretno bom tokrat govoril o “čiščenju” .exe fajlov (oz. čiščenja komentarjev, debug-info in tako naprej) od raznih programov s CLI programom TrimPE iz strani “Bitsum Technologies”: http://www.bitsum.com; sam program na žalost ni več na voljo na tej strani (namreč, vključili so ga v “PESuite” kolekcijo programov), sem ga pa na srečo že pred časom backupal in nato zuplodal na moj Volja FTP server, tako da si ga lahko zdownloadate tule: TrimPE.zip preko tega linka.

1. Za začetek malo o “TrimPE” programu samem; tule spodaj tako dodajam tekst, s katerim ponavadi (na raznih ofurmih itd.) opišem omenjeni program.

An only 31 KB in-size command-line program called TrimPE from “Bitsum Technologies” website, which is used to set new “File alignment”, and strip “fixups” and “debug info” from executables. I use it on those .exes, for which TrimPE reduces their size for more than 10-20% (FYI, Process Explorer shows them afterwards as “packed images”), however note that unfortunately it’s not available for download on the mentioned site anymore. But luckily I have one instance backed-up on CD and so I’ve uploaded it to my FTP server back then (when I mentioned TrimPE on some other forum); so if anyone wants TrimPE, so if anyone wants it please just grab it here: TrimPE.exe.

Mogoče samo opombica, da sta “TrimPE.zip” (pod remote/ direktorijem) zgoraj v uvodu te objave in TrimPE.exe (v “root” direktoriju) en in isti fajl, s tem seveda, da je prvi zazipan v .zip “archive”; nekateri serverji namreč povzročajo probleme z downloadanjem .exe fajlov.

2. Sledi prikaz tega, kako lahko z njim sprocesirate npr. program “Lister“: http://www.ghisler.com/lister, ki je “standalone” plugin za moj najljubši file-manager program Total Commander, kateremu sem mimogrede posvetil celotno prejšnjo objavo. Kot vedno, za vse parametre/switche vpiši “TrimPE.exe /?” ali “TrimPE.exe -?” v command-prompt.

TrimPE.exe lister.exe

TrimPE.exe lister.exe /Align=512 /StripFixups:A /StripDebug:Y /r

Kot lahko vidite, meni ni treba dodati “path-a” do executable fajla, ker sem si svoj “D:\Software\Support\Cmdline\” direktorij dal pod “PATH” variable (oz. spremenljivko) pod System variables, to pa lahko bajdvej naredite (jo spremenite/nastavite) tudi “on-the-fly”, pa tudi samo za določen kontekst s pomočjo “set Path=” komande v command-promptu, recimo z uporabo batch-fajlov.

3. Tako da na koncu vse skupaj v command-promptu zgleda nekako takole, kot je prikazano v “quotanem” tekstu tule spodaj.

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

D:\Referent\Linkings\Writings\Temp\..>TrimPE.exe lister.exe

 TrimPE v1.00, (c)2004 Bitsum Technologies, Jeremy Collake

 + Processing file:
   D:\Referent\Linkings\Writings\Temp\lister.exe
 + Identified as an executable.
 + Fixups will be stripped.
 + Debug information will be stripped.
 + File alignment will be set to: 200 (512)
 + Stripping fixups … success.
 + Stripping debug info … none found.
 + Original size: 454656 New size: 433152 Reduced by: 21504 bytes, (5%)

    Modules trimed: 1
    Total original size: 454656
    New size: 433152
    Reduced by: 21504 bytes, (5%)

 + All done!

D:\Referent\Linkings\Writings\Temp\..>

Aja in pa če vas slušajno zanima, kako to, da se pri meni vrstica v command-promptu končuje z “\..>”; to sem naredil tako, da sem ustvaril variable z imenom “PROMPT“, ki sem mu sam naštimal vrednostjo “$P\..$G”, drugi User variables, ki sem jim tudi sam dodajal (in jim po svoje spreminjal vrednosti) pa so variable “MOZ_NO_REMOTE” z vrednostjo “1″, variable “dircmd” z vrednostjo “/-n”, variable “devmgr_show_nonpresent_devices” z vrednostjo “1″ in pa še dvoje variable “TEMP” in “TMP” z vrednostjo “B:\Caches\Temp\” (torej je lociran na RAM drive-u/disk-u), medtem pa ko imata bajdvej “TEMP” in “TMP” pod System variables vrednost “D:\WINDOWS\Temp\”. Vse to pa se opravi pod Control Panel, potem “System – Advanced tab – Environment Variables – User variables for…”, kjer si lahko tudi vi sami poljubno spreminjate parametre/vrednosti, seveda, če veste, za kaj pri konkretni stvari (oz. spremenljivki) sploh gre!!

/DODATEK: Glede enega problema, ki ga povzroči premik lokacij za TEMP/TMP direktorij (konkretno pri inštalaciji “prevelikih” programov; še posebej, če npr. inštalacijski program “ekstrakta” drajverje, uporablja velike “Temp” fajle itd.) pa glej topic z naslovom “How do you set the TEMP and TMP variables on-the-fly??!“: http://episteme.arstechnica.com/…/990008955831, ki sem ga danes (17.6.2007) odprl na “Ars OpenForum” forumu. V bistvu pa gre ravno za tisto, kar sem že omenil zgoraj, torej za spremenjanje/nastavljanje te spremenljivke “on-the-fly”.

Tadej

Leave a Reply