ExifToolWDX

ExifTool is a powerful tool. It read a lot of images informations.  I got the idea from my last plugin, MediaInfoWDX.  
Using it as template, to create this plugin to connect to ExifTool to pull the informations.  After the first info query, 
ExifTool will be remain in the memory, until TotalCMD is closed.  If TotalCMD is closed unexpected, ExifTool will be
need to be ended in Task Manager.  

Warning
ExifTool can update the tag values, So the incorrect tags can cause the tag value lost. 

Installation:
1. Install the plugin as other content plugin.
2. Go to http://www.sno.phy.queensu.ca/~phil/exiftool/
   Download ExifTool.exe  
   Put the ExifTool.exe into plugin folder or any searchable folder.
   Update the path in Config.txt

Folder structure
ExifToolWDX
|- ExifToolWDX.wdx
|- ExifToolWDX.wdx64
|- Config.txt  (Only Nikon and Canon makernotes is included)
|- ConfigF.txt (Optional)
|- ConfigS.txt (Optional)
|- pluginst.inf
|- Readme.txt

Copyright
ExifTool: This is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
          please see http://www.sno.phy.queensu.ca/~phil/exiftool/.  
ExifToolWDX (c) Chao Liu

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.


Format of Config.txt

First Line:  Total number of fields followed by delimiter character, no space in between.
    then F or S, the format for forth line.
    then delimiter character
    Then 1 or 0 with paths sperated by semicolon(;). This is useful for network folders.
    1 for exclude paths
    0 for include paths only
    Ex: 1D:\;E:\ - media files in D:\ or E:\ and their subfolders will be excluded from loading the plugin,
        0C:\ - plugin is loaded only for media files in C:\ 
Second Line: path of exiftool.exe
Third Line: Header
Forth Line and the rest: Field Lines, one field per line.  The line order will be shown in TC in the same order.  
                         Each line has same columns. Each one seplated by defined delimiter character.
                         They must in this order

The F format

    show: 0 or 1, 0 skipped, will not displayed.  1 will be parsed the line.
    tag: The tag name to be pass to ExifTool. No leading dash.
    ValueOnly: For future version
    fieldtypes: The field type of field. MediaInfo.dll only return string, so ft_stringw will never failed. 
                Currently, it only support ft_stringw, ft_numeric_32, ft_numeric_64, ft_numeric_floating, ft_datetime
    fieldflag: always is 0 for current version.
    sortorder: 1 for ascending (a..z, 1..9), or -1 for descending (z..a, 9..0).
    FieldName: The field name, it must not contain delimiter character, and . (dot) | (vertical line) : (colon). 
               A  single - (dash) is separated bar.
    fieldunit: Only Default and # are supported. Default returns a human-readable format string.
               # read numerical tag values
               (black):   It will be determinded by tag, ExposureTime or ExposureTime#
               Default|#: [ExifToolWDX.ExposureTime] = [ExifToolWDX.ExposureTime.Default] 
               #|Default: [ExifToolWDX.ExposureTime] = [ExifToolWDX.ExposureTime.#] 

      
The S format

    Type: value type for tag
          ft_numeric_32 1
          ft_numeric_64 2
          ft_numeric_floating 3
          ft_datetime 10
          ft_stringw 11
    Tag:  The tag name to be pass to ExifTool. No leading dash.

Example F: 
200	F	1D:\					
C:\Totalcmd\Plugins\Content\ExifToolWDX\exiftool.exe							
show	tag	ValueOnly	fieldtypes	fieldflag	sortorder	FieldName	fieldunit
1	----File----	1	ft_boolean	0	1	-	
1	ExposureTime	1	ft_numeric_floating	0	1	ExposureTime	Default|#
1	FNumber	1	ft_numeric_floating	0	1	FNumber	#|Default
1	EncodingProcess	1	ft_stringw	0	1	EncodingProcess	

Example S: 
500	S	1E:\
exiftool.exe		
Type	Tag	
1	ISO	
11	Flash	
3	FNumber#	
11	ExposureTime	
3	ExposureTime#	

For easy way, just change included Fields.txt.  Update the total number of fields and the first character of each field line.
Excel is a useful tool for this file.  Save it in TAB or CSV with .txt extension.

Version:
version 1.04
Bug fixed

version 1.03
Fix local time issue.

version 1.02
Fix file name issue, and other bug fixes.

version 1.01
The initial version