Bagikan melalui


Kemudahan Pendaftaran Teknologi Bantuan Akses

Artikel ini menjelaskan cara mendaftarkan aplikasi aksesibilitas dengan Pusat Kemudahan Akses. Ini juga menjelaskan cara menyesuaikan aplikasi aksesibilitas Anda sehingga berfungsi dengan baik dengan desktop yang aman.

Pusat Kemudahan Akses adalah aplikasi Panel Kontrol untuk Microsoft Windows menyaingkan fungsionalitas untuk aksesibilitas dan kemudahan penggunaan. Dengan menggunakan Pusat Kemudahan Akses, pengguna dapat mengonfigurasi komputer mereka agar sesuai dengan kebutuhan fisik dan kognitif mereka.

Salah satu fungsi Pusat Kemudahan Akses adalah membantu pengguna meluncurkan aplikasi aksesibilitas, termasuk Narator, Keyboard Layar, dan Kaca Pembesar. Aplikasi pihak ketiga yang terdaftar juga muncul di Pusat Kemudahan Akses dan dapat diluncurkan langsung dari sana.

Aplikasi aksesibilitas harus bekerja dengan lancar dengan desktop yang aman. Desktop aman adalah antarmuka pengguna yang muncul ketika komputer dikunci (saat masuk atau ketika pengguna telah mengunci desktop), dan ketika pengguna diminta untuk mengizinkan tindakan yang berpotensi tidak aman. Untuk alasan keamanan, Windows menempatkan batasan pada perangkat lunak pihak ketiga yang berjalan di desktop yang aman. Jika Anda ingin aplikasi aksesibilitas Anda berjalan di desktop yang aman, Anda perlu mendaftarkan aplikasi dengan Pusat Kemudahan Akses.

Mendaftar dengan Pusat Kemudahan Akses

Aplikasi aksesibilitas mendaftar dengan Pusat Kemudahan Akses dengan membuat satu atau beberapa kunci registri saat aplikasi diinstal. Tabel berikut ini mencantumkan informasi yang terkandung dalam kunci registri.

Nama Deskripsi Wajib/Opsional Bahasa
Nama Aplikasi Nama aplikasi, yang ada dalam file sumber daya. Nilai registri ini berisi string dalam format tertentu. Ini bisa menjadi versi terlokalisasi dari nama aplikasi, jika aplikasi dilokalkan dalam bahasa selain bahasa Inggris. Nama muncul di Pusat Kemudahan Akses.
Wajib Lokal
ATExe Nama file atau gambar yang dapat dieksekusi aplikasi. Windows menggunakan nilai ini untuk menentukan apakah aplikasi aksesibilitas sedang berjalan.
Wajib Tidak dilokalkan
CopySettingsToLockedDesktop Nilai DWORD yang menunjukkan apakah akan menyalin pengaturan aplikasi aksesibilitas ke desktop terkunci.
Jika nilai ini adalah 1, aplikasi dapat menulis pengaturan ke lokasi di registri pengguna, dan Windows menyalin pengaturan ke lokasi yang sama di registri pengguna untuk desktop terkunci. Ini memungkinkan aplikasi untuk mempertahankan statusnya dari desktop "normal" ke desktop yang terkunci.
Opsional Tidak dilokalkan
Deskripsi Deskripsi singkat tentang aplikasi, dari file sumber daya. Nilai registri ini berisi string dalam format tertentu. Ini bisa menjadi versi deskripsi yang dilokalkan, jika aplikasi dilokalkan dalam bahasa selain bahasa Inggris. Panjang string ini harus kurang dari 512 karakter.
Deskripsi muncul di Pusat Kemudahan Akses untuk memberikan informasi tambahan tentang aplikasi aksesibilitas kepada pengguna.
Nilai ini juga dapat digunakan untuk memberi tahu pengguna bahwa aplikasi tidak digunakan pada desktop aman.
Wajib Lokal
Profil Sepotong pendek XML yang menentukan akomodasi yang disediakan aplikasi. Ini memastikan bahwa aplikasi muncul di bawah kategori yang benar di Pusat Kemudahan Akses.
Wajib Tidak dilokalkan
PassiveAutoStartBehavior

Nilai DWORD yang menunjukkan apakah perilaku mulai otomatis warisan diaktifkan.

Nilai defaultnya adalah 0, yang menunjukkan bahwa AT memerlukan perilaku mulai otomatis warisan. Ini menyebabkan pengaturan "Mulai setelah masuk" agar AT tersebut dicentang di Out Of Box Experience (OOBE) dan Panel Kontrol (lihat Panel Kontrol -> Kemudahan Akses -> Kemudahan Pusat Akses -> Mengubah pengaturan masuk), dan secara otomatis memulai AT setelah UAC dan layar kunci.

Nilai 1 menunjukkan bahwa AT harus menggunakan perilaku mulai otomatis baru di mana pengaturan "Mulai setelah masuk" untuk AT tersebut tidak dicentang di Pengalaman Di Luar Kotak (OOBE) dan Panel Kontrol, dan AT secara otomatis dimulai sekali per sesi pengguna (saat masuk) hanya jika pengaturan "mulai setelah masuk" dicentang.

Opsional Tidak dilokalkan
SecureDesktopAccommodation Nama aplikasi aksesibilitas alternatif untuk dijalankan pada desktop aman di tempat aplikasi ini. Alternatifnya dapat menjadi aplikasi yang berbeda, versi yang berbeda dari aplikasi yang sama, salah satu aplikasi aksesibilitas yang disertakan dalam Windows, atau "tidak ada" jika Anda tidak ingin menjalankan aplikasi aksesibilitas apa pun di desktop yang aman.
Opsional Tidak dilokalkan
Profil Sederhana Nilai yang menjelaskan cara mengklasifikasikan aplikasi dalam satu atau dua kata: Pembaca layar, Kaca Pembesar, atau Keyboard di layar, misalnya.
Wajib Tidak dilokalkan
StartExe Jalur lengkap dari executable. Nilai ini digunakan untuk meluncurkan aplikasi aksesibilitas.
Wajib Tidak dilokalkan
StartParams Argumen baris perintah. Nilai-nilai ini digunakan bersama dengan StartExe untuk memulai aplikasi.
Opsional Tidak dilokalkan
TerminateOnDesktopSwitch Nilai DWORD yang menentukan bagaimana aplikasi aksesibilitas merespons transisi ke atau dari desktop aman.
Jika nilai ini tidak ada atau 1, Windows mengakhiri dan memulai ulang aplikasi pada setiap transisi ke atau dari desktop aman. Ini adalah perilaku default.
Jika nilai ini adalah 0, Windows tidak mengakhiri aplikasi aksesibilitas pada transisi desktop. Aplikasi terus berjalan di desktop sebelumnya, dan Windows memulai instans baru di desktop baru jika instans belum berjalan di sana.
Opsional Tidak dilokalkan

Pelokalan

Nilai registri Nama dan Deskripsi Aplikasi harus dapat dilokalkan untuk mendukung Antarmuka Pengguna Multibahasa (MUI).

String ini dalam format berikut, di mana tanda kurung sudut menandakan elemen yang diperlukan dan tanda kurung siku menandakan elemen opsional.

@<ResDllPath\ResDLLFilename>,-<resID>[;< komentar>]

<ResDllPath\ResDLLFilename> adalah jalur ke DLL sumber daya. Jalur dapat berisi variabel lingkungan.

<resID> adalah ID sumber daya untuk string.

[komentar] berisi komentar opsional.

Ini contohnya:

@%SystemRoot%\system32\anyAT.dll,-5020

Untuk informasi selengkapnya tentang MUI, lihat Pusat Pengetahuan Windows MUI.

Profil HCI

Profil Human Computer Interaction (HCI) adalah cara untuk menentukan akomodasi apa yang akan disediakan berdasarkan kebutuhan pengguna. Aplikasi aksesibilitas harus mendaftarkan informasi tentang jenis disabilitas yang membantu mengakomodasi aplikasi.

Nilai Registri profil berisi XML yang menjelaskan jenis disabilitas yang ditargetkan oleh aplikasi aksesibilitas. XML ini memiliki format berikut:

<HCIModel>
<Accommodation type="disability"/>
</HCIModel>

Nilai yang valid untuk atribut Jenis akomodasi adalah sebagai berikut:

  • visi ringan
  • penglihatan parah
  • kognitif ringan
  • kognitif parah
  • keluasan ringan
  • keluasan parah
  • pendengaran ringan
  • pendengaran parah
  • pidato ringan
  • ucapan parah

Catatan

Nilai-nilai ini peka huruf besar/kecil.

Jika aplikasi aksesibilitas mendukung beberapa akomodasi, nilai Registri profil harus menyertakan atribut jenis Akomodasi untuk setiap akomodasi.

Detail registri Kemudahan akses

Untuk mendaftarkan aplikasi aksesibilitas, Anda perlu membuat kunci untuk aplikasi Anda di lokasi registri berikut dan mengisinya dengan pasangan nama-nilai.

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Accessibility\ATs\

Beri nama kunci registri aplikasi Anda menggunakan format berikut:

"CompanyName_ProductName_v#"

Misalnya, "Contoso_Magnifier_v2.0".

Untuk menambahkan nilai registri, program penginstalan Anda harus berjalan dengan hak istimewa yang ditinggikan.

Mengamankan akomodasi desktop

Kunci registri SecureDesktopAccommodation memungkinkan Anda menentukan bagaimana aplikasi aksesibilitas Anda merespons desktop yang aman. Secara default, Pusat Kemudahan Akses meluncurkan aplikasi Anda pada desktop aman jika sudah berjalan di desktop normal, atau jika dikonfigurasi untuk berjalan pada desktop masuk. Dengan menggunakan kunci SecureDesktopAccommodation , Anda dapat:

  • Tentukan versi alternatif aplikasi Anda untuk digunakan pada desktop aman. Misalnya, Anda mungkin memiliki versi alternatif yang menonaktifkan fitur yang tidak aman, atau dioptimalkan untuk menggunakan lebih sedikit memori dan meluncurkan lebih cepat.

    Untuk menentukan versi alternatif, atur kunci SecureDesktopAccommodation ke nama versi alternatif. Misalnya, jika Anda mendaftarkan aplikasi Anda di kunci Contoso_Screen Reader_v1.0, Anda dapat mendaftarkan versi alternatif di Contoso_Screen ReaderSecure_v1.0. Kemudian, atur kunci SecureDesktopAccommodation Contoso_Screen Reader_v1.0 ke "Contoso_Screen ReaderSecure_v1.0".

  • Tentukan aplikasi aksesibilitas Microsoft untuk digunakan di desktop aman sebagai pengganti aplikasi Anda. Untuk opsi ini, atur SecureDesktopAccommodation ke nama aplikasi aksesibilitas Microsoft tertentu: "osk", "magnifierpane", atau "Narator".

  • Tentukan bahwa aplikasi Anda tidak boleh berjalan di desktop aman, dan tidak boleh ada aplikasi alternatif. Untuk opsi ini, atur SecureDesktopAccommodation ke "none" (recommend) atau nama aplikasi yang tidak ada.

Jika kunci registri SecureDesktopAccommodation untuk aplikasi aksesibilitas Anda menentukan aplikasi aksesibilitas Microsoft untuk dijalankan di desktop aman sebagai pengganti aplikasi Anda, Windows memberi tahu pengguna tentang hal ini saat melakukan transisi ke desktop aman. Untuk memberi tahu pengguna, Windows menampilkan string yang ditentukan dalam kunci registri Deskripsi untuk aplikasi Anda. Misalnya, jika aplikasi ScreenReader Deluxe 1.0 menggunakan Microsoft Narrator di desktop aman, aplikasi tersebut akan menyertakan string Deskripsi seperti, "Microsoft Narrator akan digunakan di desktop terkunci, masuk, dan aman lainnya sebagai pengganti ScreenReader Deluxe 1.0."

Jika kunci SecureDesktopAccommodation aplikasi Anda diatur ke "tidak ada", gunakan kunci Deskripsi untuk memberi tahu pengguna bahwa aplikasi Anda tidak tersedia di desktop aman dan tidak ada alternatif yang disediakan.

Windows menampilkan teks Deskripsi di lokasi yang relevan di Pusat Kemudahan Akses.

Berjalan saat penginstalan dan pada desktop masuk

Jika Anda menambahkan nama kunci terdaftar aplikasi aksesibilitas Anda ke string di lokasi registri berikut, Windows akan meluncurkan aplikasi Anda segera setelah diinstal. Selain itu, Windows akan secara otomatis menjalankan aplikasi Anda setiap kali desktop masuk aktif.

HKCU\Software\Microsoft\Windows NT\CurrentVersion\Accessibility\Configuration

Kunci Konfigurasi adalah string yang dibatasi koma. Untuk menambahkan aplikasi Anda, tambahkan string yang sama dengan kunci registri aplikasi Anda di HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Accessibility\ATs\.

Berjalan dalam pekerjaan

Jika kunci registri TerminateOnDesktopSwitch tidak ada atau diatur ke non-nol, Windows menjalankan aplikasi dalam konteks pekerjaan, mengakhiri dan memulai ulang aplikasi dengan setiap transisi desktop. Menjalankan dalam pekerjaan memastikan bahwa hanya satu instans aplikasi yang berjalan pada waktu tertentu, dan membebaskan aplikasi dari keharusan memantau status desktop. Kerugian menjalankan dalam pekerjaan meliputi:

  • Aplikasi ini dikenakan biaya startup dengan setiap transisi desktop.
  • Aplikasi hanya dapat dimulai melalui Pusat Kemudahan Akses.
  • Aplikasi harus terus menyimpan pengaturannya karena dapat dihentikan kapan saja oleh transisi desktop.

Jika kunci TerminateOnDesktopSwitch ada dan diatur ke 0, Windows tidak menjalankan aplikasi aksesibilitas dalam pekerjaan. Ini memiliki keuntungan berikut:

  • Tidak ada biaya startup yang terkait dengan transisi desktop.
  • Aplikasi dapat dimulai di luar Pusat Kemudahan Akses.

Kerugian tidak berjalan dalam pekerjaan meliputi:

  • Karena aplikasi tidak dimulai ulang pada transisi desktop, aplikasi harus mendeteksi kapan desktop saat ini tidak aktif dan merespons dengan tepat. Misalnya, aplikasi harus melepaskan kontrol perangkat keras sehingga versi desktop aplikasi yang aman dapat menggunakannya, dan aplikasi harus memasuki mode tidur untuk menghindari penggunaan sumber daya prosesor.
  • Jika aplikasi dapat dimulai melalui menu Mulai, Windows Explorer, atau baris perintah, Pusat Kemudahan Akses perlu diberi tahu. Untuk informasi selengkapnya, lihat Tombol Logo Windows + U.
  • Karena beberapa salinan aplikasi dapat berjalan secara bersamaan di desktop yang berbeda, aplikasi harus ditulis untuk mendukung beberapa salinan yang sedang berjalan.

Tombol Logo Windows + U

Jika aplikasi aksesibilitas Anda dikonfigurasi untuk berjalan dalam pekerjaan, kode startup aplikasi Anda harus menyertakan panggilan ke fungsi IsProcessInJob untuk menentukan apakah aplikasi dimulai dalam pekerjaan. Jika ya, aplikasi harus memulai Pusat Kemudahan Akses lalu keluar. Contoh berikut menunjukkan cara memanggil IsProcessInJob.

BOOL fAlreadyInJob;
BOOL fSuccess = IsProcessInJob(GetCurrentProcess(), NULL, &fAlreadyInJob); 

Jika aplikasi aksesibilitas dikonfigurasi untuk berjalan di luar pekerjaan, aplikasi harus memberi tahu Pusat Kemudahan Akses bahwa aplikasi dimulai dan dilanjutkan seperti biasa.

Terlepas dari bagaimana aplikasi dikonfigurasi, jika menyediakan cara untuk keluar dari dalam aplikasi, seperti tombol Tutup, aplikasi harus memberi tahu Pusat Kemudahan Akses bahwa aplikasi tersebut keluar.

Aplikasi memberi tahu Pusat Kemudahan Akses dengan mengatur kunci registri sementara lalu menyuntikkan kombinasi kunci Logo Windows + tombol U ke aliran input.

Aplikasi harus membuat kunci sementara di lokasi berikut.

HKCU\Software\Microsoft\Windows NT\CurrentVersion\AccessibilityTemp

Kunci sementara harus memiliki nama yang sama dengan nama aplikasi terdaftar, seperti "Contoso_Screen Reader_v1.0". Nilai kunci adalah DWORD yang diatur ke 0x0003 saat dimulai, atau 0x0002 saat aplikasi keluar.

INPUT input[4] = {0};

input[0].type = INPUT_KEYBOARD;
input[0].ki.wVk = VK_LWIN;
input[0].ki.dwFlags = 0;

input[1].type = INPUT_KEYBOARD;
input[1].ki.wVk = 0x55; // U key
input[1].ki.dwFlags = 0;

input[2].type = INPUT_KEYBOARD;
input[2].ki.wVk = 0x55; // U key
input[2].ki.dwFlags = KEYEVENTF_KEYUP;

input[3].type = INPUT_KEYBOARD;
input[3].ki.wVk = VK_LWIN;
input[3].ki.dwFlags = KEYEVENTF_KEYUP;

SendInput(ARRAYSIZE(input), input, sizeof(input[0]));

Tombol Logo Windows + Volume Naik

Ketika pengguna memulai aplikasi aksesibilitas Anda dengan menekan tombol Logo Windows + kombinasi tombol Volume Naik (seperti pada perangkat tablet), Pusat Kemudahan Akses meneruskan argumen baris perintah berikut ke aplikasi:

/hardwarebuttonlaunch

Aplikasi Anda dapat menggunakan argumen ini untuk menentukan apakah akan memulai secara normal, atau menyesuaikan perilaku yang sesuai.

Mentransfer pengaturan desktop yang aman

Jika aplikasi aksesibilitas Anda mendukung desktop aman, Anda dapat menggunakan registri untuk menyalin pengaturan saat aplikasi beralih ke desktop aman. Pengaturan penyalinan membantu membuat transisi ke desktop aman lebih mulus bagi pengguna.

Untuk menyalin pengaturan, atur kunci registri CopySettingsToLockedDesktop aplikasi ke 1, dan simpan pengaturan di lokasi registri berikut.

HKCU\Software\Microsoft\Windows NT\CurrentVersion\Accessibility\ATConfig\<AT Key Name>

Pusat Kemudahan Akses memantau lokasi registri ini saat aplikasi sedang berjalan. Ketika transisi ke desktop aman terjadi, Pusat Kemudahan Akses menyalin pengaturan ke lokasi yang sama di sarang HKCU desktop aman. Aplikasi kemudian dapat membaca pengaturan dan melanjutkan statusnya.

Aplikasi aksesibilitas Anda harus menulis pengaturannya secara berkala atau setiap kali nilai berubah. Menulis pengaturan pada keluar aplikasi tidak akan berfungsi. Jika aplikasi berjalan dalam pekerjaan, aplikasi dihentikan pada transisi menjauh dari desktop aman, sebelum kode keluar memiliki kesempatan untuk dijalankan. Jika aplikasi tidak berjalan dalam pekerjaan, aplikasi tidak dihentikan pada transisi menjauh dari desktop aman.

Perhatian

Karena kunci registri yang dijelaskan di sini ditulis dalam mode pengguna, kunci registri tidak aman. Jika aplikasi aksesibilitas Anda membaca konten kunci ini, aplikasi tersebut harus memeriksa data dengan hati-hati dan menggunakannya dengan hati-hati. Secara khusus, aplikasi Anda harus melakukan pemeriksaan terikat pada nilai DWORD , berhati-hatilah dengan panjang string, tidak boleh membaca nama DLL plug-in, dan tidak boleh menjalankan perintah apa pun yang ditemukan dalam string.

Contoh Registri

Contoh berikut menunjukkan kemungkinan nilai registri untuk produk fiktif yang disebut Contoso ScreenReader versi 2.0, yang nama lokalnya disimpan sebagai sumber daya.

Nilai dalam tabel berada di bawah kunci berikut:

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Accessibility\ATs\Contoso_Screen Reader_v2.0

Nama Jenis Data
ApplicationName REG_SZ @%SystemRoot%\system32\ContosoRes.dll,-5020
Deskripsi REG_SZ @%SystemRoot%\system32\ContosoRes.dll,-5040
Profil REG_SZ
XML
<HCIModel>
   <Accommodation type="low vision">
   <Accommodation type="severe vision">
   <Accommodation type="mild cognitive">
</HCIModel>
SimpleProfile REG_SZ ScreenReader
StartExe REG_SZ C:\ContosoTools\Bin\ContosoSR.exe
StartParams REG_SZ
SecureDesktopAccommodation REG_SZ Narrator

Jika aplikasi menyediakan pembaca layar dan kaca pembesar layar dalam satu executable, nilai untuk komponen pembaca layar mungkin terlihat seperti ini:

Nama Jenis Data
ApplicationName REG_SZ @C:\Program Files\Contoso\Contosores.dll,-30
Deskripsi REG_SZ @C:\Program Files\Contoso\Contosores.dll,-32
Profil REG_SZ
XML
<HCIModel>
   <Accommodation type="low vision">
   <Accommodation type="severe vision">
   <Accommodation type="mild cognitive">
</HCIModel>
SimpleProfile REG_SZ ScreenReader
StartExe REG_SZ C:\Program Files\Contoso\Bin\ContosoSR.exe
StartParams REG_SZ /R

Nilai untuk komponen pembesar akan berada di kunci berikut:

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Contosoibility\ATs\Contoso_Magnifier_v2.0

Nama Jenis Data
ApplicationName REG_SZ @c:\Program Files\Contoso\Contosores.dll,-31
Deskripsi REG_SZ @c:\Program Files\Contoso\Contosores.dll,-42
Profil REG_SZ
XML
<HCIModel>
   <Accommodation type="mild vision">
</HCIModel>
SimpleProfile REG_SZ Pembesaran
StartExe REG_SZ c:\Program Files\Contoso\Bin\ContosoSR.exe
StartParams REG_SZ /m