If you want to do it:
Sample reg file for an url handler on windows:
KittensUrlHandler.reg
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\kittens]
@="URL:Kittens Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\kittens\DefaultIcon]
@="notepad.exe,1"
[HKEY_CLASSES_ROOT\kittens\shell]
[HKEY_CLASSES_ROOT\kittens\shell\open]
[HKEY_CLASSES_ROOT\kittens\shell\open\command]
@="powershell.exe -File C:\\Users\\klincecum\\Desktop\\kittensParser.ps1 \"%1\""
Sample parser for url handler data received:
kittensParser.ps1
# You will receive the complete text from your custom url handler:
# "kittens:c:\users\klincecum\desktop\arecute.txt"
#
# The text you will receive from the url handeler will be mangled:
# "kittens:c:%5Cusers%5Cklincecum%5Cdesktop%5Carecute.txt" instead of
#
# I used powershell to give you a start on a simple argument processor:
# Lets Launch notepad
$executablePath = "notepad.exe"
# Replace "kittens:" from our %1 argument variable passed from the custom url handler
$parsedArgs = $args[0].replace('kittens:','')
# Replace "%5C" with "\"
$parsedArgs = $parsedArgs.replace('%5C','\')
$quote = '"'
# Build our command, and wrap in quotes ( notepad.exe "c:\users\klincecum\desktop\arecute.txt" )
$output = $executablePath + ' ' + $quote + $parsedArgs + $quote
# Launch command
Invoke-Expression $output
#Debugging Stuff
#Add-Type -AssemblyName PresentationFramework
#[System.Windows.MessageBox]::Show($output)
#Write-Host $output
#Pause
arecute.txt
Oh Yes They are!
