Bagikan melalui


Integrasi dengan Windows Photo Gallery dan Windows Explorer

Topik ini berlaku untuk Windows Vista dan yang lebih baru. Hal ini berisi bagian-bagian berikut:

Pengantar

Untuk mengaktifkan Windows Photo Gallery dan Windows Explorer untuk menampilkan gambar mini dan mencari dan memperbarui metadata gambar standar, codec harus memiliki implementasi antarmuka IThumbnailProvider dan IPropertyStore yang terkait dengannya. Antarmuka IThumbnailProvider digunakan untuk mengambil gambar mini dan mengisi cache gambar mini, dan antarmuka IPropertyStore digunakan untuk mencari dan memperbarui metadata yang terkait dengan file. Pada Windows Vista, semua jenis file memiliki gambar mini dan metadata, tetapi jenis file yang berbeda memerlukan implementasi yang berbeda dari antarmuka ini untuk mengambil atau menghasilkan gambar mini dan metadata untuk mereka. Sistem ini menyediakan implementasi default antarmuka ini. Implementasi default IThumbnailProvider dapat digunakan untuk format gambar berkemampuan Windows Imaging Component (WIC). Implementasi default IPropertyStore dapat digunakan dengan format gambar berkemampuan WIC yang didasarkan pada Format File Gambar Bertag (TIFF) atau kontainer JPEG. Untuk mengaitkan format gambar Anda dengan implementasi default kedua antarmuka ini, Anda harus menambahkan hanya beberapa entri registri.

Entri berikut menunjukkan ke Windows Photo Gallery dan Windows Explorer bahwa ekstensi nama file (.ext) dan jenis MIME terkait dikaitkan dengan format gambar.

Entri berikut menunjukkan ke Windows dan aplikasi yang menggunakan jenis konten (juga dikenal sebagai jenis mime) bahwa file dengan ekstensi tertentu (.ext) adalah format gambar. Pemilik jenis file perlu memilih <image sub type value> yang secara unik mengidentifikasi format file dan nilai jenis konten ini perlu didaftarkan dengan IANA.

HKEY_CLASSES_ROOT
   {.ext}
      ContentType = image/<image sub type>

Entri berikut menunjukkan ke Windows, pencarian Windows, dan aplikasi yang menggunakan System.Kind bahwa ekstensi nama file (.ext) harus diperlakukan sebagai gambar. Secara khusus, ini menunjukkan bahwa properti System.Kind ekstensi file harus diatur ke Gambar.

HKEY_LOCAL_MACHINE
   Software
      Microsoft
         Windows
            CurrentVersion
               Explorer
                  KindMap
                     {.ext} = Picture

Integrasi dengan Penyimpanan Properti Windows

Terkadang properti metadata yang sama diekspos dalam skema metadata yang berbeda, sering kali dengan nama properti yang berbeda. Ketika salah satu properti ini diperbarui, tetapi yang lain tidak, metadata dalam file bisa tidak sinkron. Handler properti foto menyediakan implementasi IPropertyStore default untuk gambar, dan digunakan oleh aplikasi serta oleh Windows Photo Gallery dan Windows Explorer untuk memastikan bahwa semua metadata dalam gambar tetap sinkron, dan bahwa properti yang ditampilkan oleh aplikasi konsisten dengan yang ditampilkan oleh Windows Photo Gallery dan Windows Explorer. Ketika penangan properti foto memperbarui metadata, itu memastikan bahwa properti ini diperbarui secara konsisten di semua format metadata umum yang ada dalam file.

Handler properti foto harus memahami format kontainer dan cara menemukan berbagai properti di dalamnya. Secara umum, penangan properti foto tidak mungkin mengetahui bagaimana berbagai blok metadata ditata dalam format kontainer kepemilikan. Namun, jika metadata dalam format kontainer Anda ditata dengan cara yang sama seperti metadata dalam format kontainer TIFF atau format kontainer JPEG, penangan properti foto juga dapat memanfaatkan pengetahuan tersebut untuk memperbarui metadata secara konsisten dalam format kontainer Anda.

Anda dapat mendaftarkan asosiasi ini dengan membuat entri registri berikut. Entri ini memberi tahu penangan properti foto bahwa format kontainer yang diidentifikasi oleh GUID ini memahami jalur bahasa kueri metadata yang sama dengan format kontainer dengan GUID 163bcc30-e2e9-4f0b-961d-a3e9fdb788a3. (163bcc30-e2e9-4f0b-961d-a3e9fdb788a3 adalah GUID untuk format kontainer TIFF.)

HKEY_LOCAL_MACHINE
   SOFTWARE
      Microsoft
         Windows
            CurrentVersion
               PhotoPropertyHandler
                  ContainerAssociations
                     {Container Format GUID} = {163bcc30-e2e9-4f0b-961d-a3e9fdb788a3}

Entri berikut mengaitkan implementasi default handler properti foto IPropertyStore dengan file yang memiliki ekstensi ".ext". GUID pertama adalah IID antarmuka IPropertyStore , dan yang kedua adalah GUID implementasi handler properti foto.

HKEY_LOCAL_MACHINE
   SOFTWARE
      Microsoft
         Windows
            CurrentVersion
               PhotoPropertyHandler
                  {.ext}
                     (Default) = {a38b883c-1682-497e-97b0-0a3a9e801682}

Codec yang menggunakan format kepemilikan yang tidak kompatibel dengan format kontainer TIFF atau JPEG harus menulis implementasi IPropertyStore mereka sendiri.

Galeri Foto Windows dibangun di WIC dan dapat menampilkan format gambar yang mendukung WIC tempat codec diinstal. Untuk memberi tahu sistem bahwa format gambar Anda dapat dibuka di Galeri Foto Windows, Anda perlu membuat asosiasi file dengan membuat entri registri berikut.

HKEY_CLASSES_ROOT
   {.ext}
      (Default) = {ProgID} for example, jpegfile)
      OpenWithProgids
         {ProgID}
      OpenWithList
         PhotoViewer.dll
      ShellEx
         ContextMenuHandlers
            ShellImagePreview
               (Default) = {FFE2A43C-56B9-4bf5-9A79-CC6D4285608A}
   SystemFileAssociations
      {.ext}
         OpenWithList
            PhotoViewer.dll
         ShellEx
            ContextMenuHandlers
               ShellImagePreview
                  (Default) = {FFE2A43C-56B9-4bf5-9A79-CC6D4285608A}
   {Image Format ProgID}
      (Default) = Name of Image Format
      DefaultIcon
         (Default) = Path to icon for type, icon index
      shell
         open
            MuiVerb = @%PROGRAMFILES%\Windows Photo Gallery\photoviewer.dll,-3043
            command
               (Default) = %SystemRoot%\System32\rundll32.exe "%ProgramFiles%\Windows Photo Gallery\PhotoViewer.dll", ImageView_Fullscreen %1
            DropTarget
               Clsid = {FFE2A43C-56B9-4bf5-9A79-CC6D4285608A}
         printo
            command
               (Default) = %SystemRoot%\System32\rundll32.exe "%SystemRoot%\System32\shimgvw.dll", ImageView_PrintTo /pt "%1" "%2" "%3" "%4"

ProgID biasanya merupakan ekstensi nama file yang ditambahkan dengan kata "file". (Misalnya, jika ekstensi nama file .txt, ProgID biasanya akan menjadi "txtfile".)

Ada entri registri standar lain yang mungkin perlu Anda buat untuk mendukung asosiasi file; namun, karena tidak spesifik untuk WIC, mereka berada di luar cakupan topik ini.

Integrasi dengan Singgahan Gambar Mini Windows

Dua entri berikut menunjukkan bahwa implementasi penyedia gambar mini WIC standar dapat digunakan untuk mengambil gambar mini untuk file dengan ekstensi ini. GUID pertama adalah IID antarmuka IThumbnailProvider , dan yang kedua adalah GUID dari implementasi sistem standar antarmuka ini. (Semua entri di bawah HKCR\.ext\ShellEx\ diulang di bawah HKCR\SystemFileAssociations\.ext\ShellEx\.)

HKEY_CLASSES_ROOT
   SystemFileAssociations
      {.ext}
         ShellEx
            {e357fccd-a995-4576-b01f-234630154e96}
               (Default) = {C7657C4A-9F68-40fa-A4DF-96BC08EB3551}

Konseptual

Entri Registri Khusus Encoder

Penginstalan dan Pendaftaran CODEC

Cara Menulis WIC-Enabled CODEC

Gambaran Umum Komponen Pencitraan Windows