Essentially the same code posted here -> http://www.xyplorer.com/xyfc/viewtopic. ... 562#p71562
Just moving it to the first post for better visibility.
What it does:
The script goes through file's properties and reports it back in a text format.
How it does:
Makes use of the XY scripting command property()
In the first pass the script goes through all the known property names such as artist, album etc.
In the second pass it goes through the ID numbers of the properties, from #1-#500 to give you a list of available properties.
Usage:
Download the below file, place it in XY's scripts folder, select the file you want to find the info about and run the downloaded script from XY's menu "Scripting | Load script file" and select "Properties-v2.xys". Some notes:
1. You also run the script from several other places including address bar, simple paste this and hit enter: ::load "Properties-v2.xys";
2. Some properties might be reported twice because the script uses two different methods and hence overlap.
3. You can use the reported properties in your own script.
For example #1 always reports file size so you can select a file and use this command from address bar to get file size info:
Code: Select all
::text property ("#1");
This script reports properties of a selected file in XY's text box and copies it to clipboard too. Just a convenient way of seeing all properties without right-clicking file etc.
//Check available properties of a file.
$item=<curitem>;
$p1=Access;
$p2=Album;
$p3=AllocSize;
$p4=Aperture;
$p5=Artist;
$p6=Attrib;
$p7=Attributes;
$p8=AttributesDescription;
$p9=Audio Format;
$p10=Audio Sample Size;
$p11=BitDepth;
$p12=Bitrate;
$p13=CameraModel;
$p14=Capacity;
$p15=Channels;
$p16=ColorSpace;
$p17=Company;
$p18=Compression;
$p19=Copyright;
$p20=Create;
$p21=CSCStatus;
$p22=Data Rate;
$p23=DateDeleted;
$p24=DeletedFrom;
$p25=Dimensions;
$p26=Directory;
$p27=Distance;
$p28=DocAppName;
$p29=DocAuthor;
$p30=DocByteCount;
$p31=DocCategory;
$p32=DocCharCount;
$p33=DocComments;
$p34=DocCompany;
$p35=DocCreatedTm;
$p36=DocEditTime;
$p37=DocHiddenCount;
$p38=DocKeywords;
$p39=DocLastAuthor;
$p40=DocLastPrinted;
$p41=DocLastSavedTm;
$p42=DocLineCount;
$p43=DocManager;
$p44=DocNoteCount;
$p45=DocPageCount;
$p46=DocParaCount;
$p47=DocPresentationTarget;
$p48=DocRevNumber;
$p49=DocSlideCount;
$p50=DocSubject;
$p51=DocTemplate;
$p52=DocTitle;
$p53=DocWordCount;
$p54=DRM Description;
$p55=Duration;
$p56=EquipMake;
$p57=ExposureBias;
$p58=ExposureProg;
$p59=ExposureTime;
$p60=FaxCallerID;
$p61=FaxCSID;
$p62=FaxRecipientName;
$p63=FaxRecipientNumber;
$p64=FaxRouting;
$p65=FaxSenderName;
$p66=FaxTime;
$p67=FaxTSID;
$p68=FileDescription;
$p69=FileSystem;
$p70=FileType;
$p71=FileVersion;
$p72=Flash;
$p73=FlashEnergy;
$p74=FNumber;
$p75=FocalLength;
$p76=Frame Rate;
$p77=FrameCount;
$p78=FreeSpace;
$p79=Genre;
$p80=ImageX;
$p81=ImageY;
$p82=ISOSpeed;
$p83=LightSource;
$p84=LinksUpToDate;
$p85=LinkTarget;
$p86=Lyrics;
$p87=Manager;
$p88=MeteringMode;
$p89=MMClipCount;
$p90=Name;
$p91=Owner;
$p92=Play Count;
$p93=Play Expires;
$p94=Play Starts;
$p95=PresentationTarget;
$p96=ProductName;
$p97=ProductVersion;
$p98=Project;
$p99=Protected;
$p100=Rank;
$p101=Rating;
$p102=ResolutionX;
$p103=ResolutionY;
$p104=Sample Rate;
$p105=Scale;
$p106=ShutterSpeed;
$p107=Size;
$p108=Software;
$p109=Status;
$p110=Stream Name;
$p111=SyncCopyIn;
$p112=Track;
$p113=Type;
$p114=Video Sample Size;
$p115=WhenTaken;
$p116=Write;
$p117=Year;
$total=117;
$count=1;
copytext;
//step;
WHILE ($count < 118) {
$property= eval($p$count);
$prop= property ("$property", "$item");
IF ($prop == "") {
incr $count;
}
ELSE {
copytext ("$property = $prop <crlf>", a);
incr $count;
}
}
$clip= <clipboard>;
status "Properties copied to clipboard";
text $clip;