UI Otomasyonuna Genel Bakış
Microsoft UI Otomasyonu, Windows için bir erişilebilirlik çerçevesidir. Masaüstündeki kullanıcı arabirimi öğelerinin çoğuna program aracılığıyla erişim sağlar. Ekran okuyucular gibi yardımcı teknoloji ürünlerinin son kullanıcılara kullanıcı arabirimi hakkında bilgi sağlamasına ve kullanıcı arabirimini standart giriş dışında bir yolla işlemesine olanak tanır. UI Otomasyonu, otomatik test betiklerinin kullanıcı arabirimiyle etkileşim kurmasına da olanak tanır.
UI Otomasyonu ilk olarak Windows XP'de Microsoft .NET Framework'ün bir parçası olarak kullanılabilir. O sırada yönetilmeyen bir C++ API'si de yayımlanmış olsa da, birlikte çalışabilirlik sorunları nedeniyle istemci işlevlerinin kullanışlılığı sınırlıydı. Windows 7 için API, Bileşen Nesne Modeli'nde (COM) yeniden yazılmıştır.
Not
UI Otomasyonu'nun önceki sürümünde sunulan kitaplık işlevleri hala belgelenmiş olsa da, yeni uygulamalarda kullanılmamalıdır.
UI Otomasyonu istemci uygulamaları, birden çok Microsoft Windows denetim çerçevesi üzerinde çalışacakları güvencesiyle yazılabilir. UI Otomasyonu çekirdeği, çeşitli kullanıcı arabirimi parçalarının altında yatan çerçevelerdeki farkları maskeler. Örneğin, Windows Presentation Foundation (WPF) düğmesinin Content özelliği, Microsoft Win32 düğmesinin Caption özelliği ve HTML görüntüsünün ALT özelliği, UI Otomasyonu görünümünde Nametek bir özelliğe eşlenir.
UI Otomasyonu, Windows XP, Windows Server 2003 ve sonraki işletim sistemlerinde tam işlevsellik sağlar.
UI Otomasyonu sağlayıcıları, yerleşik köprü oluşturma hizmeti aracılığıyla denetimlerde UI Otomasyonu desteği uygulayan ve Microsoft Active Accessibility istemci uygulamaları için bazı destek sunan bileşenlerdir.
Not
UI Otomasyonu, farklı kullanıcılar tarafından olarak çalıştır komutu aracılığıyla başlatılan işlemler arasında iletişimi etkinleştirmez.
Bu konu aşağıdaki bölümleri içerir.
UI Otomasyonu Bileşenleri
UI Otomasyonu, aşağıdaki tabloda gösterildiği gibi dört ana bileşene sahiptir.
Bileşen | Açıklama |
---|---|
Sağlayıcı API'si | UI Otomasyonu sağlayıcıları tarafından uygulanan com arabirimleri kümesi. UI Otomasyonu sağlayıcıları, kullanıcı arabirimi öğeleri hakkında bilgi sağlayan ve programlı girişlere yanıt veren nesnelerdir. |
İstemci API'si | İstemci uygulamalarının kullanıcı arabirimi hakkında bilgi edinebilmesini ve denetimlere giriş göndermesini sağlayan com arabirimleri kümesi.
Not:Kullanım Dışı Denetim Deseni İşlevleri ve Kullanım Dışı Düğüm İşlevleri tanımlanan işlevler kullanım dışıdır. Bunun yerine, istemci uygulamaları İstemciler için UI Otomasyonu Öğesi Arabirimleri'nde açıklanan UI Otomasyonu COM arabirimlerini kullanmalıdır. |
UIAutomationCore.dll | Bazen UI Otomasyonu çekirdeği olarak da adlandırılan ve sağlayıcılar ile istemciler arasındaki iletişimi işleyen çalışma zamanı kütüphanesi. |
Oleacc.dll | Microsoft Etkin Erişilebilirlik ve vekil nesneleri için çalışma zamanı kütüphanesi. Kitaplık ayrıca Win32 denetimlerini desteklemek için Microsoft Microsoft Active Accessibility to UI Automation Proxy tarafından kullanılan proxy nesneleri de sağlar. |
UI Otomasyonunu kullanmanın iki yolu vardır: sağlayıcı API'sini kullanarak özel denetimler için destek oluşturmak ve ui öğeleriyle iletişim kurmak ve kullanıcı arabirimi öğeleri hakkında bilgi almak için UI Otomasyonu çekirdeğini kullanan istemci uygulamaları oluşturmak. Odağınıza bağlı olarak, belgelerin farklı bölümlerine başvurmanız gerekir. Özel denetimler için destek oluşturmanız gerekiyorsa bkz. UI Otomasyonu Sağlayıcısı Programcı Kılavuzu. Kullanıcı arabirimi öğeleriyle iletişim kurmanız veya kullanıcı arabirimi öğeleri hakkında bilgi almanız gerekiyorsa bkz. UI Otomasyonu İstemci Programcı Kılavuzu.
UI Otomasyonu Başlık Dosyaları
UI Otomasyonu API'si, Windows Yazılım Geliştirme Seti'ne (SDK) dahil edilen birkaç farklı C/C++ üst bilgi dosyasında tanımlanır. UI Otomasyonu üst bilgi dosyaları aşağıdaki tabloda açıklanmıştır:
Başlık dosyası | Açıklama |
---|---|
UIAutomationClient.h | UI Otomasyonu istemcileri tarafından kullanılan arabirimleri ve ilgili programlama öğelerini tanımlar. |
UIAutomationCore.h | UI Otomasyonu sağlayıcıları tarafından kullanılan arabirimleri ve ilgili programlama öğelerini tanımlar. |
UIAutomationCoreApi.h | UI Otomasyonu istemcileri ve sağlayıcıları tarafından kullanılan genel sabitleri, GUID'leri, veri türlerini ve yapıları tanımlar. Ayrıca kullanım dışı bırakılan düğüm ve denetim deseni işlevlerinin tanımlarını içerir. |
UIAutomation.h | Diğer tüm UI Otomasyon başlık dosyalarını içerir. Ui Automation uygulamalarının çoğu tüm UI Otomasyonu üst bilgi dosyalarından öğeler gerektirdiğinden, her dosyayı ayrı ayrı eklemek yerine UIAutomation.h dosyasını UI Automation uygulama projelerinize dahil etmek en iyisidir. |
UI Otomasyonu API'sini kullanan bir uygulama geliştiriyorsanız, projenize UIAutomation.h dosyasını eklemeniz gerekir. Uygulamanız Microsoft Etkin Erişilebilirlik'i destekliyorsa Oleacc.h üst bilgi dosyasını ekleyin. GUID kullanan UI Otomasyonu uygulamaları da Initguid.h üst bilgi dosyasını gerektirir. Gerekirse, UiAutomation.h'nin önüne Initguid.h eklenmelidir.
UI Otomasyon Modeli
UI Otomasyonu, kullanıcı arabiriminin her öğesini IUIAutomationElement arabirimi tarafından temsil edilen bir nesne olarak istemci uygulamalarına sunar. Öğeler, kök öğe masaüstü olmak üzere bir ağaç yapısında yer alır. İstemciler, ağacın ham görünümünü denetim görünümü veya içerik görünümü olarak filtreleyebilir. Bu standart yapı görünümleri, Windows SDK'sı ile birlikte gelen Inspect uygulaması kullanılarak kolayca görülebilir. Uygulamalar özel görünümler de oluşturabilir.
UI Otomasyonu öğesi, temsil ettiği denetimin veya UI öğesinin özelliklerini kullanıma sunar. Bu özelliklerden biri, denetimin veya UI öğesinin temel görünümünü ve işlevselliğini tek bir tanınabilir varlık olarak tanımlayan denetim türüdür( örneğin, bir düğme veya onay kutusu). Denetim türleri hakkında daha fazla bilgi için bkz. UI Otomasyonu Denetim Türlerine Genel Bakış.
Buna ek olarak, UI Otomasyonu öğesi bir veya daha fazla denetim desenini kullanıma sunar. Denetim deseni, belirli bir denetim türüne özgü bir özellik kümesi sağlar. Denetim düzeni, istemci uygulamalarının öğe hakkında daha fazla bilgi almasını ve öğeye giriş sağlamasını sağlayan yöntemleri de kullanıma sunar. Denetim desenleri hakkında daha fazla bilgi için bkz. UI Otomasyonu Denetim Desenlerine Genel Bakış.
Not
Denetim türleriyle denetim desenleri arasında bire bir yazışma yoktur. Bir denetim deseni birden çok denetim türü tarafından desteklenebilir ve bir denetim, davranışının farklı yönlerini ortaya çıkaran birden çok denetim desenini destekleyebilir. Örneğin, açılır kutuda en az iki denetim deseni vardır: biri genişleyip daralabilme yeteneğini, diğeri ise seçim mekanizmasını temsil eder. Ancak, bir denetim yalnızca tek bir denetim türü sergileyebilir.
UI Otomasyonu, olaylar aracılığıyla istemci uygulamalarına bilgi sağlar. WinEvents'in aksine, UI Otomasyonu olayları bir yayın mekanizmasını temel almaz. UI Otomasyonu istemcileri belirli olay bildirimlerine kaydolabilir ve belirli özelliklerin ve denetim düzeni bilgilerinin olay işleyicilerine geçirilmesini isteyebilir. Buna ek olarak, UI Otomasyonu olayı onu tetikleyen öğeye bir başvuru içerir. Sağlayıcılar, istemcilerin dinleyip dinlemediğine bağlı olarak olayları seçmeli olarak yükselterek performansı artırabilir. Olaylar hakkında daha fazla bilgi için bkz. UI Otomasyonu Olaylarına Genel Bakış.