Di mana asosiasi Program Default disimpan dalam registri? [duplikat]

16

Jika saya menjalankan assocutilitas baris perintah untuk ekstensi, ini menunjukkan jenis file / deskripsi untuk ekstensi yang saya atur di registri. Tetapi jika saya pergi ke Control Panel -> Default Program - Set Associations maka saya melihat deskripsi yang berbeda dan program default.

Dulu pengaturan dua tombol:

  • HKCR\.ext(default) = Identifier
  • Identifier (default) = "Deskripsi File"
    • \ DefaultIcon (default) = Beberapa ikon
    • \ Shell \ Open \ Command (default) = Beberapa editor

Tapi sekarang tampaknya ada override di tempat lain, yang akan ditampilkan dalam daftar Program Default.

Pertanyaan saya adalah, di mana saya menyimpan informasi asosiasi yang ditimpa ini? Saya berasumsi itu ada di registri, tapi saya tidak melihatnya di kunci yang saya harapkan. Saya percaya ini telah diubah dalam kerangka waktu Vista, tetapi mungkin sudah di XP juga.

Pembaruan: Karena ada beberapa kebingungan, lakukan tes berikut. Ganti nama file ke beberapa ekstensi baru. Buat asosiasi di kunci registri yang disebutkan di atas. Kemudian klik kanan pada file, Open With dan pilih program yang berbeda (memeriksa untuk menjadikannya default). Sekarang periksa registri. Tidak berubah, tetapi sekarang file dikaitkan dengan deskripsi, ikon, dan program default yang berbeda.

Jim McKeeth
sumber

Jawaban:

20

Harus di:

HKEY_LOCAL_MACHINE\SOFTWARE\Classes dan HKCU\SOFTWARE\Classes

Dan saya tidak percaya bahwa ini telah berubah baru-baru ini.

Prioritasnya adalah untuk pengguna saat ini, kemudian mesin lokal (alias saya percaya ke kelas root).

Explorer menggunakan serangkaian kunci registri berbeda yang dapat ditemukan di:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\

Soando
sumber
Saya percaya itu adalah HKEY_CLASSES_ROOTpeta apa juga. Mereka menyimpan apa yang assocdikembalikan oleh perintah. Tetapi informasi penggantian yang dikembalikan oleh Program Default di Panel Kontrol berbeda.
Jim McKeeth
Saya melihat suntingan Anda tentang itu alias untuk kelas root. Tetapi Anda kehilangan titik bahwa di tempat lain ada asosiasi yang diganti yang ditampilkan dalam daftar Program Default dari Control Panel.
Jim McKeeth
dan bukan pengaturan di HKCU?
Soando
Tidak, lihat pembaruan yang saya tambahkan. Anda bisa mengujinya sendiri.
Jim McKeeth
1
Terima kasih banyak Maaf tentang kebingungan sebelumnya.
soando