AnyELF - a new lister plugin

Discuss and announce Total Commander plugins, addons and other useful tools here, both their usage and their development.

Moderators: white, Hacker, petermad, Stefan2

Serge1
Junior Member
Junior Member
Posts: 16
Joined: 2013-01-10, 00:26 UTC

AnyELF - a new lister plugin

Post by *Serge1 »

Hi,

(This is my first post at this forum.)

I just announced a new lister plugin at totalcmd-net. It is called AnyELF.

I would appreciate any feedback regarding the plugin. Any proposals for improvement are very welcomed.

The plugin is open sourced – please let me know if you have any comments and/or suggestions regarding the sources too.

Best regards,
Serge
hs2
Junior Member
Junior Member
Posts: 10
Joined: 2005-04-21, 09:38 UTC

Post by *hs2 »

Very nice plugin Serge :) Thanks !
User avatar
ehab
Senior Member
Senior Member
Posts: 271
Joined: 2007-10-29, 07:41 UTC
Location: Libya

Post by *ehab »

i tested 2 different targets:

Machine: Intel 80386

and

Machine: Advanced Micro Devices X86-64 processor


works fine on both :D

now i need to find some usage for it.

thanks for also sharing the sources.
#181344 Personal licence
iana
Senior Member
Senior Member
Posts: 345
Joined: 2010-07-27, 22:00 UTC

Post by *iana »

First of tanks a lot for the new plugin, good job :)

I Didn't think this dll would work under XP but it does, anyway can you tweak the VC11 project file so the min required OS version isn't set to 6.0 but to 5.01

What font are you using, how about an option to change the font, maybe try a Monospaced font?
Serge1
Junior Member
Junior Member
Posts: 16
Joined: 2013-01-10, 00:26 UTC

Post by *Serge1 »

iana wrote:First of tanks a lot for the new plugin, good job :)
Thanks to all for the compliments
iana wrote:I Didn't think this dll would work under XP but it does, anyway can you tweak the VC11 project file so the min required OS version isn't set to 6.0 but to 5.01
I'll look at this. Should not be a problem, but, I never did this before. If you are aware, would you please advise what property/configuration of the project should be tweaked?
iana wrote:What font are you using, how about an option to change the font, maybe try a Monospaced font?
Currently, the plugin uses system stock fonts. For ANSI - ANSI_FIXED_FONT and for ASCII - SYSTEM_FIXED_FONT. They are supposed to be Monospaced. Don't you see a fixed font output on your system?

I also think that it would be preferred to use natural lister fonts for this purpose. I have asked related question at topic ?t=16547 (I have no permission to post URL yet). I am waiting for a reply on it...
iana
Senior Member
Senior Member
Posts: 345
Joined: 2010-07-27, 22:00 UTC

Post by *iana »

I'll look at this. Should not be a problem, but, I never did this before. If you are aware, would you please advise what property/configuration of the project should be tweaked?
I don't have vs2012 but in the old versions you could set the OS version 2 ways
1. using a command line option adding these two values /D "WINVER=0x0501" /D "_WIN32_WINNT=0x0501" in the compiler options in visual studio, right-click the project select Configuration Properties->C/C++->Command Line and paste that line there
2. in the stdafx.h you can define the minimum OS that's to be supported, add these 2 definitions
#define WINVER 0x0501
#define _WIN32_WINNT 0x0501
It might be better to use 0x0500 (aka 2k) but VS 2012 doesn't support 2k, and it supports XP only with SP1 installed.
As you're building a 64bit dll too don't forget to add an if before defining the WINWER to 0x0501
#if defined(WIN32)
..
#endif
It might be easier to use the command line project options and use the /D switch to define win32 to 0X0501 for the 32bit build and don't edit the include files.

About the font, it maybe the font I've selected in lister, I'm not sure what font it is, it doesn't look monospaced but it could be, the size is too small,
here's a screenshot of your plugin viewing a linux application, the font is hard to read
Image: http://i.imgur.com/R3zcb.png

edit: after staring at the font I see it is a monospaced font but personally I don't like it it's too small.

ps. About posting links I think you need to be a member a week or two or have 5 posts but you'll be there soon, and the author reads these pages regularly so you'll probably get an answer soon.
Serge1
Junior Member
Junior Member
Posts: 16
Joined: 2013-01-10, 00:26 UTC

Post by *Serge1 »

iana wrote: 1. using a command line option adding these two values /D "WINVER=0x0501" /D "_WIN32_WINNT=0x0501" in the compiler options in visual studio, right-click the project select Configuration Properties->C/C++->Command Line and paste that line there
Thank you for the advice. I am using these settings for a new lister plugin AnyCmd (which will be announced soon) and for future versions of AnyELF.

The font size problem is not resolved though.
Serge1
Junior Member
Junior Member
Posts: 16
Joined: 2013-01-10, 00:26 UTC

Re: AnyELF - a new lister plugin

Post by *Serge1 »

Hi,

I'd like to announce availability of a minor update for this plugin. The plugin version 1.2 is based on ELFIO library version 2.1 and adds possibility of .dynamic section dump output.

Best regards,
Serge
billiebub
Member
Member
Posts: 187
Joined: 2011-04-12, 19:49 UTC

Post by *billiebub »

great plugin however it crashes when viewing MN10300 ELF with error "External exception E06D7363". Works fine with other architectures though.
Serge1
Junior Member
Junior Member
Posts: 16
Joined: 2013-01-10, 00:26 UTC

Post by *Serge1 »

billiebub wrote:great plugin however it crashes when viewing MN10300 ELF with error "External exception E06D7363". Works fine with other architectures though.
I am sorry not seeing this post earlier. Would you please send me an example of MN10300 ELF file?
Serge1
Junior Member
Junior Member
Posts: 16
Joined: 2013-01-10, 00:26 UTC

Re: AnyELF - a new lister plugin

Post by *Serge1 »

Hi,

I'd like to announce availability of a minor update for this plugin. The plugin version 1.5 is based on ELFIO library version 3.1 and permits dump of section and segment's data.

Best regards,
Serge
billiebub
Member
Member
Posts: 187
Joined: 2011-04-12, 19:49 UTC

MN103 ELF file

Post by *billiebub »

Hi,

Here is a link to an MN10300 ELF file

https://www.dropbox.com/s/i2uqws7kx70ra82/ARMSCII-8.so?dl=0

Let me know how it goes.

Thanks
Serge1
Junior Member
Junior Member
Posts: 16
Joined: 2013-01-10, 00:26 UTC

Re: MN103 ELF file

Post by *Serge1 »

billiebub wrote:Hi,

Here is a link to an MN10300 ELF file

Let me know how it goes.

Thanks
Thank you very much for providing this ELF file. The problem was confirmed - a .note.GCC-command-line section of this file contains data in unusual format. It is just one single string not prepended with name and description sizes as it should in accordance to NOTE section format. This problem cannot be fixed, but code preventing the crash was added to ELFIO library.

An updated TC plugin availability will be announced shortly.

BTW, readelf utility is also not happy with the file and gives a warning:
readelf: Warning: note with invalid namesz and/or descsz found at offset 0x0

Best regards,
Serge
billiebub
Member
Member
Posts: 187
Joined: 2011-04-12, 19:49 UTC

readelf shows NEEDED shared libaries and plugin does not

Post by *billiebub »

readelf shows an error when a dynamic section is missing but still shows NEEDED shared libraries but the plugin does not show it. This might not be adhering to the ELF standard but it would be helpful to replicate what readelf shows in the plugin.

I tested using the following ARM ELF:

https://www.dropbox.com/s/u5gfnt30k9f66mu/entropy.so?dl=0

Also would it be possible to hide or collapse the data section at the bottom? Seem to add lots of noise when doing a quick browse.
Kungergely
Junior Member
Junior Member
Posts: 2
Joined: 2018-01-02, 09:48 UTC

Re: AnyELF - a new lister plugin

Post by *Kungergely »

I'm having a problem with this plug-in when trying to view a file compiled with Lazarus (well, lazbuild to be precise) on an x86_64 architecture. The executable itself is pretty large (~30 megs long) and Total Commander hangs without producing any output when I try to view it using AnyELF. Could you take a look at it please?
Post Reply