Windows 8 でアプリケーションを関連付ける PowerShell スクリプト (ftype / assoc を使用する可能性あり)

Windows 8 でアプリケーションを関連付ける PowerShell スクリプト (ftype / assoc を使用する可能性あり)

Windows XP / Vista / 7 では、以下のように ftype と assoc を使用して、項目を一括してデフォルトから再関連付けすることが簡単でした。これは、すべての関連付けがユーザーの希望どおりであることを確認するためのシステム セットアップで重要な時間節約でした。そうしないと、新規インストールで各拡張機能を 1 つずつ再関連付けするのに (非常に) 時間がかかります。

Windows 8 では、このいずれも機能していないようです。たとえば、.pdf ファイルは、デフォルトで Microsoft の Metro アプリ「リーダー」に関連付けられています。多数の (10 または数百のファイル タイプ) ファイルを標準のデスクトップ アプリに手動で再度関連付ける必要がある (たとえば、.pdf は Microsoft Reader ではなく Adob​​e Reader に関連付ける必要がある) のは、新しい Windows 8 インストールでは面倒な作業になります。以下は、Windows 7 で cmd スクリプトを使用してこれを実行した例ですが、PowerShell の進歩により、明らかに Windows 8 の方が適していると思われます (さらに、これらの Metro 関連付けを変更するには .NET へのアクセスが必要になると思われますが、cmd はその作業には適していません)。

Metro アプリが悪いとは思いません (タブレットでは理想的です)。問題は、デスクトップ版に比べて機能が大幅に制限されていることです。そのため、すべてをすばやく (スクリプトで) デスクトップ アプリに再関連付けできると便利です (または、タブレットで作業していて、そのユース ケースですべてを Metro アプリに関連付けたい場合はその逆も可能です)。

:: File assoc and ftype: RAR, ZIP, NFO, DIZ, CBR, CBZ, DJVU, etc
:: ####################
:: Note: at commandline, would type ftype txtNFO="%SystemRoot%\system32\NOTEPAD.EXE" "%1"
:: but in batch script have to double up the % characters, ftype txtNFO="%SystemRoot%\system32\NOTEPAD.EXE" "%%1"
:: plus note the " characters, have to be careful about these
if exist "C:\Program Files (x86)\7-Zip\7zFM.exe" ftype 7zFM="C:\Program Files (x86)\7-Zip\7zFM.exe" "%%1"
if exist "C:\Program Files\7-Zip\7zFM.exe" ftype 7zFM="C:\Program Files\7-Zip\7zFM.exe" "%%1"ftype txtNFO="%%SystemRoot%%\system32\NOTEPAD.EXE" "%%1"
ftype txtDIZ="%%SystemRoot%%\system32\NOTEPAD.EXE" "%%1"
ftype QuickPAR="D:\Toolkit\QuickPAR\QuickPAR.exe" "%%1"
ftype CDisplay="D:\Toolkit\CDisplay\CDisplay.exe" "%%1"
if exist "D:\Toolkit\Microsoft Reader\msreader.exe"         ftype MSReader="D:\Toolkit\Microsoft Reader\msreader.exe" "%%1"
if exist "D:\Toolkit\Mobipocket Reader\reader.exe"          ftype MobiPocket="D:\Toolkit\Mobipocket Reader\reader.exe" "%%1"
if exist "D:\Toolkit\Stanza\Stanza.exe"                     ftype Stanza="D:\Toolkit\Stanza\Stanza.exe" "%%1"
assoc .lit=MSReader
assoc .mobi=MobiPocket
assoc .prc=MobiPocket
assoc .azw=MobiPocket
assoc .epub=Stanza
assoc .par=QuickPAR
assoc .par2=QuickPAR
assoc .sfv=QuickPAR
assoc .md5=QuickPAR
assoc .7z=7zFM
assoc .rar=7zFM
assoc .zip=7zFM

関連情報