ricktendo64 wrote:Also n7Epilson any good Ideas on how to make a good addon for this?
I tried using AddReg for the shell extentions, but my first attempt failed. Im gonna keep trying, maybe I did something wrong.
All FGCBAHandler does is simply add a FGCBAHandler key to the shell key of inifile and inffile in HKEY_CLASSES_ROOT...
Here's a REG of what is added (if you want to make it into an addon) as of version 0.01:
REGEDIT4
[HKEY_CLASSES_ROOT\inffile\shell\FGCBAHandler]
@="&FGCBA..."
[HKEY_CLASSES_ROOT\inffile\shell\FGCBAHandler\command]
@="{fullPathToFGCBAHandler} "%1""
[HKEY_CLASSES_ROOT\inifile\shell\FGCBAHandler]
@="&FGCBA..."
[HKEY_CLASSES_ROOT\inifile\shell\FGCBAHandler\command]
@="{fullPathToFGCBAHandler} "%1""
Of course {fullPathToFGCBAHandler} is the absolute path to the FGCBAHandler.exe which was launched with the /register parameter
The uninstall routine simply deletes the FGCBAHandler keys in HKCR\inifile and HKCR\inffile
ricktendo64 wrote:Adding FGCBA... shell extention to all the integrators suported archive files would be awesome (rar, 7z, zip, cab).
The problem with these formats is that they aren't handled in the registry as individual types, instead (and especially when you install a archive program like 7-Zip or WinRAR, they set their keys to point to their own custom registry subkey in HKCR and adding shell\FGCBAHandler to them has no effect.
So I would have to add that subkey to the shell key of the type these archive types are pointed to, and that in itself is unpredictable (I can't predict the applications on the user's system).
I can probably code FGCBA to attempt to trace the key redirections to the final type and register itself there but then when you uninstall the program which owns that type, FGCBA's key would get deleted, and FGCBA's registering mechanism then itself would become unpredictable to a degree making it difficult to make an addon for it (unless you specifically run FGCBAHandler.exe /register) and that would mean requiring the handler to be registered only after the .NET Framework has been installed....
The ultimate solution to that is to code the context menu item for FGCBAHandler into a C++ persistent context menu handler DLL but that is beyond me currently (unless someone can do it

, all it needs is just to add the handler item to the required types)
Or
You can just put FGCBAHandler in the SendTo menu, I have coded it to immediately run FGCBA in checkaddon mode if the input file is an addon archive.
@NightWolf81, sorry I didn't realise that possibility (crash if FGCBA was not found in system path), I will handle this a lot more gracefully in the next version...