ファイルの関連付けを適切に作成するには、どのデータと場所をWindowsレジストリに追加する必要がありますか?
この質問をするのは、主に、Visual Studio .NETのWindowsインストーラーパッケージャーを使用してファイルの関連付けを作成した、数年前に作成した古いアプリケーションが原因です。私がインストール.whr
した拡張機能はとでし.encxml
た。
現在、これらのアプリケーションがインストールされているコンピューターでは、奇妙な問題が発生することがあります。ファイルがGoogleChromeまたはInternetExplorer(特にexe、msi、またはzipファイル)にダウンロードされると、ブラウザーはファイル拡張子を1に変更します。私のインストーラーによってインストールされた拡張機能の。それが他のブラウザに影響を与えるかどうかはわかりません-これら2つに共通点はありますか?したがって、たとえばhttp://example.com/downloads/application.exeをダウンロードすると、ファイルはhttp://example.com.downloads/application.encxml(または.whrのいずれか)としてダウンロードされます。明白な理由は何もありません。
とのキーに注意する必要がありHKCR\.whr
ますHCKR\.encxml
キー参照(アカウントマネージャーの暗号化されたXMLファイルと作業時間レコード)にはスペースがあり、Visual Studioで関連付けを作成したときに、「。」を追加しませんでした。フロントへ。おそらくスペースは許可されていません、そして/またはあなたは「。」で始まることになっていますか?レジストリコードは問題ないようですが、レジストリを調べてみると、他のすべてのアプリケーションがアソシエーションクラスのスペースを使用しておらず、この問題は、私が知っているマシンにインストールされているアプリケーションの他のファイル拡張子でも発生しないことがわかりました。私のアプリケーションのVSインストーラーによって作成されたもの。ファイル拡張子に関連する対応するレジストリキーと値のレジストリダンプを貼り付けました。MSIは独自仕様であるため、これがすべてかどうかはわかりませんが、他のアプリケーションからわかっていることから、これがすべてであるはずです。私' 何年もの間、この問題について常に疑問に思っていましたが、それを理解することはできませんでした。これらの古いアプリケーションの1つをすぐに新しい製品に置き換えるので、今回はこのような奇妙なバグがないことを確認したいと思います...
データは次のとおりです(値の下に//コメントを付けていくつかのバイナリ文字列のテキスト値を示したことに注意してください):
[HKEY_CLASSES_ROOT\.encxml]
"Content Type"="application/octet-stream"
@="Account Manager Encrypted XML File"
[HKEY_CLASSES_ROOT\.encxml\Account Manager Encrypted XML File]
[HKEY_CLASSES_ROOT\.encxml\Account Manager Encrypted XML File\ShellNew]
[HKEY_CLASSES_ROOT\Account Manager Encrypted XML File]
@="Account Manager Encrypted XML File"
[HKEY_CLASSES_ROOT\Account Manager Encrypted XML File\DefaultIcon]
@=hex(2):25,00,41,00,50,00,50,00,44,00,41,00,54,00,41,00,25,00,5c,00,4d,00,69,\
00,63,00,72,00,6f,00,73,00,6f,00,66,00,74,00,5c,00,49,00,6e,00,73,00,74,00,\
61,00,6c,00,6c,00,65,00,72,00,5c,00,7b,00,42,00,36,00,34,00,31,00,37,00,36,\
00,30,00,42,00,2d,00,37,00,44,00,42,00,37,00,2d,00,34,00,46,00,31,00,42,00,\
2d,00,41,00,44,00,36,00,45,00,2d,00,30,00,41,00,33,00,34,00,32,00,30,00,46,\
00,35,00,45,00,45,00,30,00,44,00,7d,00,5c,00,5f,00,36,00,46,00,45,00,46,00,\
46,00,39,00,42,00,36,00,38,00,32,00,31,00,38,00,34,00,31,00,37,00,46,00,39,\
00,38,00,46,00,35,00,34,00,39,00,2e,00,65,00,78,00,65,00,2c,00,30,00,00,00
// Product code GUID is: {F7F214E9-ED37-4AE1-B0D2-93427973E60A}, which is different from below but I probably changed it at some point for some reason
// %APPDATA%\Microsoft\Installer\{B641760B-7DB7-4F1B-AD6E-0A3420F5EE0D}\_6FEFF9B68218417F98F549.exe,0
[HKEY_CLASSES_ROOT\Account Manager Encrypted XML File\shell]
@="open"
[HKEY_CLASSES_ROOT\Account Manager Encrypted XML File\shell\open]
@="&Open"
[HKEY_CLASSES_ROOT\Account Manager Encrypted XML File\shell\open\command]
@="\"C:\\Program Files\\Petroules Enterprises\\Account Manager\\AccountManager.exe\" \"%1\""
"command"=hex(7):4c,00,29,00,25,00,59,00,63,00,73,00,67,00,2d,00,4c,00,41,00,\
28,00,30,00,64,00,66,00,34,00,36,00,75,00,5f,00,50,00,27,00,3e,00,27,00,7d,\
00,27,00,66,00,25,00,6f,00,59,00,64,00,4b,00,69,00,48,00,74,00,7a,00,35,00,\
21,00,55,00,2b,00,6c,00,68,00,54,00,20,00,22,00,25,00,31,00,22,00,00,00,00,\
00
// This is a bizarre-looking value... what's up with that?
// L)%Ycsg-LA(0df46u_P'>'}'f%oYdKiHtz5!U+lhT "%1"
[HKEY_CLASSES_ROOT\.whr]
"Content Type"="application/octet-stream"
@="Work Hours Record"
[HKEY_CLASSES_ROOT\.whr\Work Hours Record]
[HKEY_CLASSES_ROOT\.whr\Work Hours Record\ShellNew]
[HKEY_CLASSES_ROOT\Work Hours Record]
@="Work Hours Record"
[HKEY_CLASSES_ROOT\Work Hours Record\DefaultIcon]
@=hex(2):25,00,41,00,50,00,50,00,44,00,41,00,54,00,41,00,25,00,5c,00,4d,00,69,\
00,63,00,72,00,6f,00,73,00,6f,00,66,00,74,00,5c,00,49,00,6e,00,73,00,74,00,\
61,00,6c,00,6c,00,65,00,72,00,5c,00,7b,00,46,00,41,00,32,00,33,00,44,00,37,\
00,36,00,34,00,2d,00,46,00,36,00,34,00,39,00,2d,00,34,00,38,00,46,00,39,00,\
2d,00,38,00,44,00,30,00,42,00,2d,00,45,00,31,00,38,00,38,00,35,00,41,00,39,\
00,38,00,31,00,46,00,39,00,39,00,7d,00,5c,00,5f,00,36,00,46,00,45,00,46,00,\
46,00,39,00,42,00,36,00,38,00,32,00,31,00,38,00,34,00,31,00,37,00,46,00,39,\
00,38,00,46,00,35,00,34,00,39,00,2e,00,65,00,78,00,65,00,2c,00,30,00,00,00
// Product code GUID: {FA23D764-F649-48F9-8D0B-E1885A981F99}, same as below
// %APPDATA%\Microsoft\Installer\{FA23D764-F649-48F9-8D0B-E1885A981F99}\_6FEFF9B68218417F98F549.exe,0
[HKEY_CLASSES_ROOT\Work Hours Record\shell]
[HKEY_CLASSES_ROOT\Work Hours Record\shell\open]
@="&Open"
[HKEY_CLASSES_ROOT\Work Hours Record\shell\open\command]
@="\"C:\\Program Files\\Petroules Enterprises\\Work Hours Calculator\\WorkHoursCalculator.exe\" \"%1\""
"command"=hex(7):28,00,5d,00,56,00,49,00,79,00,55,00,7b,00,5e,00,4e,00,3f,00,\
26,00,68,00,48,00,7e,00,53,00,24,00,6e,00,31,00,36,00,59,00,3e,00,33,00,75,\
00,5f,00,7d,00,47,00,26,00,70,00,79,00,75,00,78,00,38,00,4e,00,72,00,43,00,\
6e,00,67,00,27,00,44,00,67,00,42,00,20,00,22,00,25,00,31,00,22,00,00,00,00,\
00
// Same bizarre-looking type of value as before, but different...
// (]VIyU{^N?&hH~S$n16Y>3u_}G&pyux8NrCng'DgB "%1"