PowerShell 2.0の初期状態では、拡張子が仮設のファイルタイプへ向いているので、本来のファイルタイプへ向け直します。
[HKEY_CLASSES_ROOT\.PS1]
@="PS1_auto_file"
↓
[HKEY_CLASSES_ROOT\.PS1]
@="Microsoft.PowerShellScript.1"
更に、ファイルタイプのデフォルト動詞が、メモ帳に向いているので、PowerShellに向け直します。
[HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\Shell]
@="Open"
↓
[HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\Shell]
@="0"
更に、関連付けのコマンドラインが引数を忘れているようなので、%*を追加します。
[HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\Shell\0\Command]
@="\"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe\" \"-file\" \"%1\""
↓
[HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\Shell\0\Command]
@="\"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe\" \"-file\" \"%1\" %*"
更に、ファイルをPS1ファイルにドロップするには、WSHのドロップハンドラを使用します。
[HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\ShellEx\DropHandler]
@="{60254CA5-953B-11CF-8C96-00AA00B8708C}"
ただし、WSHのドロップハンドラはOpen動詞に作用するので、動詞の名前を入れ替えます。
0 → Open
Open → Edit
Edit → ISE
同時に、ファイルタイプのデフォルト動詞を戻します。
[HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\Shell]
@="0"
↓
[HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\Shell]
@="Open"