ID Artikel: 122787 - Kajian Terakhir: 14 September 2011 - Revisi: 2.0

CONTOH: FileAsso.exe menunjukkan bagaimana untuk menggunakan File Asosiasi

Tips SistemThis article applies to a different operating system than the one you are using. Article content that may not be relevant to you is disabled.

Pada Halaman ini

Perbesar semua | Perkecil semua

RINGKASAN

Windows menyediakan file Asosiasi sehingga aplikasi dapat mendaftar jenis dokumen-dokumen yang mendukung. Hal ini menguntungkan karena memungkinkan pengguna untuk klik dua kali atau memilih sebuah dokumen di File Manager untuk mengedit atau mencetaknya. Asosiasi file ini juga didukung oleh ShellExecute() API. Asosiasi file juga memungkinkan pengguna untuk membuka beberapa dokumen dengan satu contoh dari aplikasi melalui File Manager.

ShellExecute() memiliki manfaat bahkan lebih dalam Windows 95.

INFORMASI LEBIH LANJUT

Berkas berikut ini tersedia untuk diunduh dari Pusat Unduhan Microsoft:
FileAsso.exe (http://download.microsoft.com/download/platformsdk/sample19/1/W9XNT4/EN-US/FileAsso.exe)
Untuk informasi lebih lanjut tentang cara men-download berkas Dukungan Microsoft, klik nomor artikel di bawah ini untuk melihat artikel pada Basis Pengetahuan Microsoft:
119591  (http://support.microsoft.com/kb/119591/EN-US/ ) Cara mendapatkan berkas Dukungan Microsoft dari Layanan Online
Microsoft telah memindai berkas ini dari virus. Microsoft menggunakan perangkat lunak pendeteksi virus terbaru yang tersedia pada tanggal saat berkas dikirimkan. Berkas tersebut disimpan di server yang aman, yang membantu mencegah pengubahan yang tidak sah terhadap berkas.Informasi berikut berlaku untuk kedua Buka file dan File cetak. Untuk kemudahan membaca, artikel ini membahas File terbuka untuk menjelaskan bagaimana file Asosiasi bekerja.

Ketika pengguna double-clicks dokumen, File Manager panggilan ShellExecute() dengan nama file. ShellExecute() memeriksa pendaftaran Database untuk entri yang mengaitkan ekstensi file itu dengan tertentu aplikasi. Jika catatan ada dan tidak menentukan DDE perintah, maka ShellExecute() meluncurkan aplikasi yang ditentukan pada registri. Jika registri menetapkan menggunakan perintah DDE, ShellExecute() upaya untuk membangun percakapan DDE dengan aplikasi yang menggunakan aplikasi topik. Jika sebuah aplikasi menanggapi DDE koneksi, ShellExecute() mengirim DDE mengeksekusi perintah, yang ditentukan dalam registri. Itu terserah aplikasi untuk mendefinisikan spesifik pada percakapan ini, terutama nama layanan dan topik untuk menyambung ke, dan juga DDE benar melaksanakan sintaks perintah untuk menggunakan. Namun, jika upaya untuk membangun percakapan gagal, ShellExecute() meluncurkan aplikasi yang ditentukan pada registri dan mencoba untuk membuat sambungan DDE lagi.

Ada satu lagi pilihan yang tersedia ketika aplikasi tidak berjalan, yang tampaknya menjadi sesuai untuk mencetak File. Pada pilihan ini, ShellExecute() mengirimkan pernyataan Execute berbeda, kebutuhan aplikasi untuk membuka dan mencetak dokumen. Ketika pencetakan dilakukan, itu keluar.

Ada dua langkah untuk aplikasi untuk membuka beberapa dokumen melalui contoh aplikasi tunggal melalui Asosiasi File. Sebagai contoh, asumsikan MyApp adalah aplikasi dan AssocSupport topik. Sebagian besar aplikasi menggunakan MyApp sebagai nama aplikasi dan sistem mereka sebagai topik.
  1. Ketika aplikasi dimulai, mendaftar DDE Server dengan nama aplikasi dan topik (misalnya MyApp dan AssocSupport). Aplikasi ini juga memiliki untuk mendukung DDE mengeksekusi pernyataan. The mengeksekusi pernyataan bisa format; minimal harus:

    <action> <filename> <options></options></filename></action>

    <action>Inilah apa-apa yang menentukan identifikasi unik tindakan, seperti terbuka atau cetak. <filename>Adalah file yang harus dioperasi. Akhirnya, <options>dapat menjadi pilihan yang perlu diteruskan.</options> </filename> </action>

    Khas mengeksekusi pernyataan mengikuti format ini:

    [<action>(<filename>)]</filename></action>

    Misalnya, menggunakan Microsoft Word:

    [Open("%1")] Aplikasi harus mendukung fungsi yang diperlukan untuk dilaksanakan pernyataan.
  2. Asosiasi file dapat dilakukan dalam Windows NT melalui File Manager atau regedit.

Menggunakan File Manager untuk mengatur File Asosiasi

Ketika bergaul menggunakan jenis file File Manager, pilih Rekan dari The Berkas menu. Associate dialog menyajikan daftar file yang ada Asosiasi. Dialog ini membolehkan Anda untuk menambahkan jenis file baru (atau file Asosiasi), mengubah jenis file yang ada, atau menghapus file yang ada jenis. The Tipe File baru tombol memungkinkan pengguna untuk menambahkan sebuah asosiasi untuk ekstensi file baru. Berikut adalah langkah-langkah:
  1. Tambahkan Jenis berkas Nama. Sebagai contoh, nama itu "Microsoft Word 6.0 Dokumen."
  2. Memilih tindakan (terbuka atau cetak). Sebagai contoh, pilih Menggunakan DDEkotak centang.
  3. Tambahkan nama jalan dan aplikasi direktori. Sebagai contoh, masukkan WINWORD sebagai aplikasi.
  4. Pilih Menggunakan DDE pilihan.
  5. Mengatur aplikasi sebagai nama Server DDE.
  6. Mengatur topik sebagai DDE Server. Sebagai contoh, masukkan Sistem sebagai Topik.
  7. Mengatur pesan DDE <action> <filename> <options>sama sebagai aplikasi Anda mengeksekusi pernyataan. Namun <filename>dan <options>harus diganti oleh argumen baris perintah apa pun adalah. Sebagai contoh:</options> </filename> </options> </filename> </action>

    DDE pesan: [FileOpen("%1")]

Menggunakan Regedit dalam Windows NT untuk mengatur File Asosiasi

CATATAN: Regedit tersedia hanya dalam Windows NT, tidak dalam Windows versi 3.1.

Pengguna juga dapat mengaitkan file dengan aplikasi dengan menggunakan regedit. Dari Mengedit menu, pilih Menambahkan jenis File atau Mengubah jenis berkas (untuk mengubah Ada jenis file). Sebuah dialog yang mirip dengan dialog File Manager Associate muncul. Ikuti langkah-langkah yang sama seperti yang dijelaskan untuk File Manager. Di Windows Versi 3.1, setelah Anda telah ditentukan jenis File melalui metode ini, pergi ke File Manager menghubungkan dialog dan melampirkan jenis file ekstensi.

Menggunakan Program untuk mengatur File Asosiasi

Anda juga dapat mengatur Asosiasi pemrograman. Ini berguna ketika Pengaturan aplikasi Anda pada mesin lain. Anda dapat memberikan ini fungsi ini melalui program instalasi Anda. Cara pertama untuk melakukannya (metode sederhana) adalah menggunakan regedit untuk menggabung perubahan dari file. Sintaks untuk ini adalah:
   regedit <filename>.reg
				
<filename>.Reg adalah: </filename>
   REGEDIT
   HKEY_CLASSES_ROOT\.riy = FMA000_File_assoc 
   HKEY_CLASSES_ROOT\FMA000_File_assoc = File_assoc 
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\open\command = fileasso.EXE 
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\open\ddeexec = [Open(%1)]
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\open\ddeexec\application
         = Myserver
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\open\ddeexec\topic = system
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\print\command = fileasso.EXE
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\print\ddeexec = [Open(%1)]
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\print\ddeexec\application 
         = MYServer
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\print\ddeexec\topic = System
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\print\ddeexec\ifexec =
   [Test(%1)]
				
Dalam program, Anda juga dapat menambahkan kunci registri dengan menggunakan registri Api. Kebutuhan pengembang untuk menambahkan tombol berikut untuk pendaftaran database:
   // Your extensions.
   HKEY_CLASSES_ROOT\.riy = FMA000_File_assoc

   //File type name.
   HKEY_CLASSES_ROOT\FMA000_File_assoc = File_assoc

   // Command to execute when application is not running or dde is not
   // present and Open command is issued.
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\open\command = fileasso.EXE

   // DDE execute statement for Open.
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\open\ddeexec = [Open(%1)]

   // The server name your application responds to.
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\open\ddeexec\application =
   Myserver

   // Topic name your application responds to.
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\open\ddeexec\topic = system

   // Command to execute when application is not running or dde is not
   // present and print command is issued.
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\print\command = fileasso.EXE

   // DDE execute statement for Print.
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\print\ddeexec = [Open(%1)]

   // The server name your application responds to.
   HKEY_CLASSES_ROOT\FMA000_File_assoc\shell\print\ddeexec\application =
   MYServer

   // Topic name your application responds to.
   HKEY_CLASSES_ROOT\FMA000_File assoc\shell\print\ddeexec\topic = System

   // DDE execute statement for print if the application is not already
   // running. This gives the options for a an application to Run, Print
   // and Exit.
   HKEY_CLASSES_ROOT\FMA000_File assoc\shell\print\ddeexec\ifexec =
   [Test(%1)]
				

REFERENSI

Windows SDK programer referensi, Volume 1, Bab 7, Shell perpustakaan atau Buku secara Online.

Jendela 3.1 SDK membantu file, Database registrasi, Shell fungsi pustaka.

Win32 programer referensi, Volume 2, bab 52, registri dan Inisialisasi file atau buku secara Online.

Win32 SDK membantu berkas registri dan inisialisasi

Manajer file bantuan File.

REGEDIT.HLP

REGEDT32.HLP

Berlaku bagi:
  • Microsoft Windows Software Development Kit 3.1
Kata kunci: 
kbdownload kbfile kbinfo kbsample kbmt KB122787 KbMtid
Penerjemahan MesinPenerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:122787  (http://support.microsoft.com/kb/122787/en-us/ )