fhanau / Efficient-Compression-Tool

Fast and effective C++ file optimizer
Apache License 2.0
596 stars 41 forks source link

ECT Crashing on run. #9

Closed ObiWanCeleri closed 8 years ago

ObiWanCeleri commented 8 years ago

As per the author of FileOptimizer I submit a ticket.

I've tried to cover as much ground as possible so here goes.

FileOptimizer version : 8.30.1456 System : Windows 7 Pro, french. SP1. 64 bits. Latest patches. AMD Phenom II X6 1100T Thuban 45nm on an ASUSTeK Computer INC. M5A87 (AM3R2) 12gig Ram DDR 3 1024 Mb ATI AMD Radeon HD 5700 Series System very stable.

When running FileOptimizer (64 bits) to compress .PNG files, I always get an error message as soon as FO calls ECT. I've also been able to reproduce the error by starting ECT via the command line with admin privileges.

Message is "ECT has ceased functioning".

I've tried both small (<512 bytes) and large (> 5mb) picture files.

ECT seems to work properly if run in 32 bit mode (tried a few files via command line and -9 as an argument)

In 64 bit mode, If I start ECT with no arguments, it gives me instructions on the command line. So there is no corruption in the executable (or is there).

OTHER OBSERVATIONS I have a windows XP virtual machine. ECT works fine in the virtual machine (works in 32 bits obviously) Folder / file names contain no strange or illegal characters. Crashes from the command line in Windows7 as it does with FileOptimizer 64 bits. Using Microsoft Security Essentials as an anti-virus. Does not flag the file. UAC disabled. Files are not read-only or open in another application.

Here's what Windows has to say : Source : Application Error ID de l’événement :1000 Catégorie de la tâche :(100) Niveau : Erreur Mots clés : Classique Utilisateur : N/A Nom de l’application défaillante ECT.exe, version : 0.0.0.0, horodatage : 0x56ba7d3a Nom du module défaillant : ECT.exe, version : 0.0.0.0, horodatage : 0x56ba7d3a Code d’exception : 0xc000001d Décalage d’erreur : 0x00000000000288fe ID du processus défaillant : 0x2094 Heure de début de l’application défaillante : 0x01d1a47b1cca156d ID de rapport : 5a8e9521-106e-11e6-8fea-bcaec56f76e0

If you need any further information or testing on my part, I am available.

Thank you!

AlyoshaVasilieva commented 8 years ago

0xc000001d is "Illegal Instruction" so it seems the binary FileOptimizer is using has instructions your CPU doesn't support. Best guess is FileOptimizer is using an Intel-optimized binary and your somewhat old AMD CPU is missing the instruction set.

Assuming that's true, using a standard binary or binary optimized for amdfam10 should fix this.

I'm not fhanau, just best guess, standard disclaimer, etc

ObiWanCeleri commented 8 years ago

Thanks AlyoshaVasilieva, that is very useful! I will pass the message to the author of FileOptimizer.

In the meantime I have replaced the executable by the 32bit version that comes with ... FileOptimizer.

By the way my CPU is "old" CPU but it's soooo solid :)

Louis