
新しい Windows 7 SP1 ベース イメージを作成しました。これですべて問題ありません。
だから私は今標準アプリケーションをインストールしています
Quicktime で .mov ファイルを管理したいのですが、唯一の問題は、WMP (Windows Media Player) が .mov ファイルとの関連付けを解除しないことです。
気が狂いそうです...ファイルの関連付けを修正する方法に関するスレッドを読んでいます。
レジストリ、PowerShell、またはコマンドラインで実行したいのですが、GPOは使用できません
私は次のことを試しました:
assoc .mov=QuickTime.mov
ftype QuickTime.mov="%ProgramFiles(x86)\QuickTime\QuickTimePlayer.exe"
Reg add HKCU\Software\Microsoft\windows\CurrentVersion\Explorere\FileExts\.mov\UserChoice" /v Progid /d QuickTime.mov /f
Reg add HKCU\Software\Microsoft\windows\CurrentVersion\Explorere\FileExts\.mov\OpenWithList" /v a /d QuickTimePlayer.exe /f
Reg add "HKCU\Software\Microsoft\windows\CurrentVersion\Explorere\FileExts\.mov\OpenWithList" /v b /d wmplayer.exe /f
Reg add HKCU\Software\Microsoft\windows\CurrentVersion\Explorere\FileExts\.mov\OpenWithList" /v MRUList /d ab /f
Reg add HKCU\Software\Microsoft\windows\CurrentVersion\Explorere\FileExts\.mov\OpenWithProgids" /v Quicktime.mov /t REG_NONE /d 0000 /f
Reg add HKCU\Software\Microsoft\windows\CurrentVersion\Explorere\FileExts\.mov\OpenWithProgids" /v WMP11.AssocFile.MOV /t REG_NONE /d 0000 /f
答え1
まず、「assoc」コマンドは、HKEY_CLASSES_ROOT 内のファイル タイプの一般的な関連付けを変更します。regedit でエントリを確認すると、正常に変更できることがわかると思います。UserChoice サブキーに既にユーザー設定が設定されている場合は、それが優先されるため、この方法は役に立ちません。おそらく、あなたはすでにこれを知っていて、それが他のレジストリ キーを直接変更しようとしている理由だと思います。
次に気付いたのは、キー パスのエラーです。「Explorer」ではなく「Explorere」を使用しています。これはおそらく、キーを変更しようとしてもエラー メッセージが表示されないことを意味しています。新しい未使用のキーを作成する場合、ファイルの動作には影響しません。
次に、キーの変更方法について質問しているようですが、方法については気にしていないようです (スクリプト化されている限り)。そこで、PowerShell を試してみました。UserChoice を書き込もうとするたびにセキュリティ例外が発生しますが、他のキーでは発生しません。問題は、この特定のレジストリ キーのアクセス権にあるようです。PowerShell で ACL を読み出すと、自分のアカウントのレジストリ アクセス ルールで「SetValue」が「Deny」になっていることがわかりました。
次のページこの問題を回避し、必要な権限を削除する方法について、優れた説明がされています。以下は、私の Win7 PC で動作したスクリプトです。.mov ファイルを使用して確認したところ、スクリプトは、ファイルをダブルクリックしたときに呼び出されるプログラムを正常に変更しました。
$user=<your user account name>
$name = "Software\Microsoft\windows\CurrentVersion\Explorer\FileExts\.mov\UserChoice"
$RegKey ="HKCU:\" + $name
Get-ItemProperty -path $RegKey
get-acl -path $RegKey
$key = [Microsoft.Win32.Registry]::CurrentUser.OpenSubKey($name, [Microsoft.Win32.RegistryKeyPermissionCheck]::ReadWriteSubTree,
[System.Security.AccessControl.RegistryRights]::ChangePermissions)
$acl = $key.GetAccessControl()
$rule=new-object System.Security.AccessControl.RegistryAccessRule ($user, 'SetValue', 'Deny')
$acl.RemoveAccessRule($rule)
$key.SetAccessControl($acl)
get-acl -path $RegKey
Set-ItemProperty -path $RegKey -name Progid -value 'WMP11.AssocFile.MOV' -type String
Get-ItemProperty -path $RegKey
さらにエラーがある場合は、ACL 権限を比較することをお勧めします。スクリプトは、前後の ACL とキーの現在の内容を出力します。
注意 1. 表示されるアイコンは更新されない場合があります。.mov ファイルをダブルクリックしてテストしてください。 2. 問題がある場合は、値を手動で変更できること、および regedit で同等の変更が確認できることを確認してください。
アップデート: ユーザー固有の設定を保持したいと想定していましたが、説明をもう一度読んでみると、これを指定していないことに気付きました。すべてのユーザーの関連付けを変更したい場合は、次のような比較的簡単なコマンドでUserChoiceキーを完全に削除する必要があります。これ. その後、「assoc」コマンドが機能するはずです。
答え2
試すデフォルトプログラムエディターファイル タイプ設定に移動し、.mov
ファイルを選択して、Open
項目を Quicktime に変更します。
その後、変更を .reg ファイルとして保存し、検査/適用/保存/展開することができます。