Windows Shell Extension: Difference between revisions

From OniGalore
Jump to navigation Jump to search
m (lets add a cat for scen)
m (setup for "xmlfile")
Line 3: Line 3:
There can be customized options for specific file types if you add registry keys to both '''HKEY_CLASSES_ROOT''' and '''HKEY_LOCAL_MACHINE'''.
There can be customized options for specific file types if you add registry keys to both '''HKEY_CLASSES_ROOT''' and '''HKEY_LOCAL_MACHINE'''.


Originally, Gumby wrote such shell extension but it refuses to work on some systems. Either Windows 10 needs HKEY_LOCAL_MACHINE as well or other registry settings of other programs are interfering.
Originally, [http://oni.bungie.org/forum/viewtopic.php?pid=10487#p10487 Gumby wrote such shell extension] but it refuses to work on some systems. Either Windows 10 needs HKEY_LOCAL_MACHINE as well or other registry settings of other programs are interfering.




==Setup for oni. file type==
'''HKEY_CLASSES_ROOT'''
'''HKEY_CLASSES_ROOT'''


Line 18: Line 19:
   
   
  [HKEY_CLASSES_ROOT\.oni\shell\OniSplit_or_OniSplitGUI\command]
  [HKEY_CLASSES_ROOT\.oni\shell\OniSplit_or_OniSplitGUI\command]
  @="\"C:\\PATH\\OniSplit_or_OniSplitGUI.exe\" \"%1\""
  @="\"C:\\PATH\\Batch_for_OniSplit_or_OniSplitGUI.exe\" \"%1\""




Line 33: Line 34:
   
   
  [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.oni\shell\OniSplit_or_OniSplitGUI\command]
  [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.oni\shell\OniSplit_or_OniSplitGUI\command]
  @="\"C:\\PATH\\OniSplit_or_OniSplitGUI.exe\" \"%1\""
  @="\"C:\\PATH\\Batch_for_OniSplit_or_OniSplitGUI.exe\" \"%1\""




===Advanced conversions===
==Setup for .xml file type==
If another program handles OniSplit and automatically feeds it with the right arguments you would only need this:
Since .xml is a widly used file extension there seem to be additional settings had override the default lookups for better management.


  collect and process OniSplit helper list
The .xml key at HKEY_LOCAL_MACHINE\SOFTWARE\Classes has a '''Default value (redirect)''' with "'''xmlfile'''".
 
If you remove the xmlfile value then Classes\xmlfile will be looked up nonetheless. (Doublecheck on other machines.)
 
So, next reg path to modify is this:
 
  [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\xmlfile\shell\OniSplit_or_OniSplitGUI]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\xmlfile\shell\OniSplit_or_OniSplitGUI\command]
@="\"C:\\PATH\\Batch_for_OniSplit_or_OniSplitGUI.exe\" \"%1\""
 
 
==Advanced conversions==
If another program handles OniSplit and automatically feeds it with the right arguments you would only need one explorer context menu option such as:
 
add to OniSplit helper list and process


Some conversions require more than one input file. In that case can collect the other files first:
Some conversions require more than one input file. In that case can collect the other files first:


  collect for OniSplit helper
  add to OniSplit helper list


Additional, useful options might be:
Additional, useful options might be:
Line 51: Line 67:




===Install and uninstall===
==Install and uninstall==
A less tech-sevvy modder shouldn't need to deal with registry settings.
A less tech-sevvy modder shouldn't need to deal with registry settings.


AEI could be used to distribute an OniSplitHelper tool that manages also the registry.
AEI could be used to distribute an OniSplitHelper tool that manages the registry.


Perhaps "Vago" and "Simple Onisplit GUI" could be adapted to do that.
Perhaps "Vago" and "Simple Onisplit GUI" could be adapted to do that.


[[Category:Modding information]]
[[Category:Modding information]]

Revision as of 16:41, 5 May 2019

In Windows you can right-click a file to show a context-menu and choose from various options.

There can be customized options for specific file types if you add registry keys to both HKEY_CLASSES_ROOT and HKEY_LOCAL_MACHINE.

Originally, Gumby wrote such shell extension but it refuses to work on some systems. Either Windows 10 needs HKEY_LOCAL_MACHINE as well or other registry settings of other programs are interfering.


Setup for oni. file type

HKEY_CLASSES_ROOT

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.oni]

[HKEY_CLASSES_ROOT\.oni\shell]

[HKEY_CLASSES_ROOT\.oni\shell\OniSplit_or_OniSplitGUI]
@="Command name to be displayed in context menu"

[HKEY_CLASSES_ROOT\.oni\shell\OniSplit_or_OniSplitGUI\command]
@="\"C:\\PATH\\Batch_for_OniSplit_or_OniSplitGUI.exe\" \"%1\""


HKEY_LOCAL_MACHINE

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.oni]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.oni\shell]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.oni\shell\OniSplit_or_OniSplitGUI]
@="Command name to be displayed in context menu"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.oni\shell\OniSplit_or_OniSplitGUI\command]
@="\"C:\\PATH\\Batch_for_OniSplit_or_OniSplitGUI.exe\" \"%1\""


Setup for .xml file type

Since .xml is a widly used file extension there seem to be additional settings had override the default lookups for better management.

The .xml key at HKEY_LOCAL_MACHINE\SOFTWARE\Classes has a Default value (redirect) with "xmlfile".

If you remove the xmlfile value then Classes\xmlfile will be looked up nonetheless. (Doublecheck on other machines.)

So, next reg path to modify is this:

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\xmlfile\shell\OniSplit_or_OniSplitGUI]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\xmlfile\shell\OniSplit_or_OniSplitGUI\command]
@="\"C:\\PATH\\Batch_for_OniSplit_or_OniSplitGUI.exe\" \"%1\""


Advanced conversions

If another program handles OniSplit and automatically feeds it with the right arguments you would only need one explorer context menu option such as:

add to OniSplit helper list and process 

Some conversions require more than one input file. In that case can collect the other files first:

add to OniSplit helper list

Additional, useful options might be:

repeat last OniSplit helper conversion
clear OniSplit helper list


Install and uninstall

A less tech-sevvy modder shouldn't need to deal with registry settings.

AEI could be used to distribute an OniSplitHelper tool that manages the registry.

Perhaps "Vago" and "Simple Onisplit GUI" could be adapted to do that.