FIX: Update tersedia untuk memungkinkan kustomisasi kontrol identifikasi untuk model ekstensi dikodekan UI tes di Visual Studio 2010 SP1

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 2696646 - Melihat produk di mana artikel ini berlaku.
Perbesar semua | Perkecil semua

Pada Halaman ini

RINGKASAN

Pembaruan tersedia untuk Microsoft Visual Studio 2010 paket layanan 1 (SP1). Update ini menambahkan model ekstensi baru untuk mengaktifkan kustomisasi kontrol identifikasi ketika Anda merekam dan memutar otomatisasi tes dengan menggunakan model ekstensi dikodekan UI tes dalam Visual Studio 2010 SP1. Setelah Anda menerapkan pembaruan ini, pelaksanaan baru colok-masuk untuk kontrol kustom jauh lebih sederhana dan lebih mudah daripada sebelumnya.

Model ekstensi baru menambahkan kelas berikut:
  • UITechnologyElementProxy.Sebagai contoh dari cara menggunakan kelas baru ini, Anda dapat mengubahQueryIDmetode. Metode ini terdaftar sebagai seperangkat kondisi pada peta elemen UI (UIMap). Anda dapat menggunakan kelas baru ini untuk menambahkan kondisi lainnya atau mengubah kondisi yang ada. Kondisi ini bisa menjadi tambahan otomatisasi atribut. Atau, kondisi ini dapat digunakan untuk menambahkan lebih tersedia hirarki informasi file UIMap yang sudah ada.
  • UITechnologyManagerProxy. Anda dapat menggunakan kelas baru ini untuk mendaftarkan manajer teknologi Anda dengan manajer teknologi proxy.

Untuk informasi lebih lanjut tentang bagaimana menggunakan kelas-kelas baru ini setelah Anda menerapkan pembaruan ini, lihat skenario dalam bagian "Informasi selengkapnya".

INFORMASI LEBIH LANJUT

Skenario

Skenario 1

Anda mencoba untuk menguji kontrol yang disesuaikan dengan menggunakan kode UI Test. semuanya tampak baik kecuali untuk satu atau dua glitches kecil seperti perubahan dari persegi melompat-lompat kontrol yang disesuaikan atau menimpa GetHashCode metode. Dengan model ekstensi sebelumnya, Anda bisa menulis colok-masuk untuk mengatasi masalah ini dan untuk menimpa metode dimaksudkan. Tapi pada saat yang sama, Anda akan harus mengganti beberapa metode lain untuk membuat pekerjaan colok-masuk, dan mungkin diperlukan hari untuk menstabilkan. Dengan menggunakan model ekstensi baru, Anda dapat melakukan pekerjaan yang sama dengan meng-override hanya metode yang dimaksudkan.

Skenario 2

Anda mengembangkan sebuah kontrol yang disesuaikan dan memverifikasi bahwa tes UI kode tidak mengotomatisasi tindakan kontrol disesuaikan. Sebagai contoh, kode tes UI yang hanya memainkan kembali mengkoordinasikan klik. Dengan menggunakan kelas-kelas baru ini, Anda dapat menerapkan model ekstensi untuk menyesuaikan kontrol pencarian properti untuk mengotomatisasi tindakannya dengan menggunakan tes UI dikodekan dalam sembilan langkah sederhana yang mengikuti.

Microsoft menyediakan pemrogaman hanya untuk ilustrasi, tanpa garansi baik tersurat maupun tersirat. Ini mencakup, namun tidak terbatas pada, jaminan tersirat mengenai keadaan yang dapat diperjualbelikan atau kesesuaian untuk tujuan tertentu. Artikel ini mengasumsikan bahwa Anda sudah terbiasa dengan bahasa pemrogaman yang ditunjukkan dan dengan alat-alat yang digunakan untuk membuat dan memperbaiki prosedur. Teknisi Microsoft dapat membantu menjelaskan fungsionalitas prosedur tertentu. Namun, mereka tidak akan mengubah contoh tersebut untuk menyediakan fungsionalitas tambahan atau membuat prosedur untuk memenuhi kebutuhan spesifik Anda.
  1. Lulus kontrol identifikasi properti melalui properti dapat digunakan jenis AccessibleObject seperti deskripsi atau membantu properti. Demikian pula, melewati nilai properti lain sebagai string pembatas terpisah di properti AccessibleObject , seperti dalam contoh berikut:

    public override string Description
    {
        get
        {
            return "<custom_property_value1>"+";"+"<custom_property_value2>";
        }
    }

    Catatan Ini adalah hanya salah satu metode untuk melewati parameter tambahan tes UI dikodekan. Jika Anda memiliki beberapa properti yang harus terbuka, Anda juga dapat melewati properti kustom dengan menggunakan pendekatan injeksi kode. Satu pendekatan adalah untuk menggunakan saluran WCF antara kode UI tes dan aplikasi yang sebenarnya. Saluran dapat digunakan untuk melewati properti yang dibutuhkan untuk mengidentifikasi kontrol atau melakukan validasi dasar kontrol dengan menggunakan custom properti. Metode lain untuk melewati properti adalah dengan menggunakan Windows Olahpesan. Anda dapat memutuskan metode yang tepat, tergantung pada kebutuhan Anda.

  2. Menentukan nama kustom teknologi di UITechnologyManagerProxykelas dan manajer teknologi inti sesuai nama sehingga dikodekan UI tes ekstensi kerangka dapat melakukan internal proxy pendaftaran sesuai.

    Catatan Saat ini, pihak ketiga colok-masuk tidak dapat menggunakan nama teknologi yang sama sebagai salah satu nama teknologi inti dikodekan UI tes. Juga, beberapa pihak ketiga colok-masuk nama tidak konflik. Meskipun colok-masuk diambil oleh manajer ekstensi, dikodekan UI tes colok-masuk manager tidak memungkinkan pendaftaran beberapa colok-masuk yang memiliki nama duplikat teknologi. Oleh karena itu, disesuaikan kontrol harus didaftarkan terhadap nama teknologi yang berbeda dalam konstruktor CustomTechnologyManager , seperti dalam contoh berikut:
    public CustomTechnologyManager()
                : base("MSAA", "<custom_technology_name>")
            {
            }
  3. Mengesampingkan GetControlSupportLevel metode UITechnologyManagerProxykelas. Anda dapat memperoleh jenis AccessibleObject dari properti windowHandle , seperti dalam contoh berikut. Setelah Anda melakukan ini, menjadi cukup mudah untuk mengekstrak properti kustom. Anda dapat kemudian kembali tingkat dukungan yang sesuai dari kebiasaan colok-masuk Setelah divalidasi terhadap nilai properti kustom.
    internal enum OBJID : uint
            {
                WINDOW = 0x00000000,
                SYSMENU = 0xFFFFFFFF,
                TITLEBAR = 0xFFFFFFFE,
                MENU = 0xFFFFFFFD,
                CLIENT = 0xFFFFFFFC,
                VSCROLL = 0xFFFFFFFB,
                HSCROLL = 0xFFFFFFFA,
                SIZEGRIP = 0xFFFFFFF9,
                CARET = 0xFFFFFFF8,
                CURSOR = 0xFFFFFFF7,
                ALERT = 0xFFFFFFF6,
                SOUND = 0xFFFFFFF5,
            }
     
    internal static IAccessible AccessibleObjectFromWindow(IntPtr windowHandle)
            {
                Guid accessibleGuid = typeof(IAccessible).GUID;
                IAccessible accessible = null;
     
                if (AccessibleObjectFromWindow(windowHandle, (int)OBJID.WINDOW, ref accessibleGuid, ref accessible) != 0)
                {
                    Trace.TraceError("AccessibleObjectFromWindow failed for window handle {0}", windowHandle);
                }
     
                return accessible;
            }
     
     
           [DllImport("oleacc.dll")]
    internal static extern int AccessibleObjectFromWindow(IntPtr hWnd, int dwObjectID, ref Guid riid, ref IAccessible pAcc);
     
    public override int GetControlSupportLevel(IntPtr windowHandle)
            {
                int supportLevel = base.GetControlSupportLevel(windowHandle);
                if (supportLevel > 1)
                {
                    IAccessible accessibleObject = this.AccessibleObjectFromWindow(windowHandle);
                    if (accessibleObject!=null && accessibleObject.accDescription.Contains("custom_property_value"))
                    {
                        return (int)ControlSupport.ControlSpecificSupport;
                    }
                }
     
                return (int)ControlSupport.NoSupport;
            }
  4. Tambahkan properti kustom ke QueryID metode dalam UITechnologyElementProxykelas. Anda dapat menambahkan kondisi tambahan atau menghapus kondisi dari metode QueryID . Sadarilah bahwa segera setelah kondisi dihapus, properti kondisi berhenti muncul di UIMap. Setelah kondisi tambahan yang ditambahkan, itu akan terdaftar sebagai sebuah tag tambahan untuk kondisi properti pada berkas .uitest kode yang dihasilkan jika tindakan apapun dilakukan pada kontrol disesuaikan, seperti dalam contoh berikut:
    <PropertyCondition Name=" <Custom_property_name>">Custom_property_value</PropertyCondition>
     
            public override IQueryElement QueryId
            {
                get 
                {
                    if (queryElement == null)
                    {
                        queryElement = base.QueryId;
                        if(string.Equals(this.ControlTypeName, ControlType.Button.ToString(), StringComparison.OrdinalIgnoreCase))
                        {
                            Utilities.UpdateQueryId(this, queryElement, new string[] 
                            {
                                <Custom_property_name>
                        });
                        }
                    }
                    return queryElement;
                }
            }


    Berikut ini adalah contoh bagaimana menerapkan metode Utilities.UpdateQueryId . Metode ini digunakan pada contoh sebelumnya.
    internal static void UpdateQueryId(UITechnologyElement element, IQueryElement queryElement, string[] inclusionProperties)
            {
                List<IQueryCondition> conditionList = new List<IQueryCondition>(queryElement.Condition.Conditions);
                if (conditionList != null)
                {
                    bool updated = false;
                    foreach (string propertyToInclude in inclusionProperties)
                    {
                        bool exists = false;
                        foreach (IQueryCondition qCond in conditionList)
                        {
                            PropertyCondition pCond = qCond as PropertyCondition;
                            if (pCond != null &&
                                string.Equals(pCond.PropertyName, propertyToInclude, StringComparison.OrdinalIgnoreCase))
                            {
                                exists = true;
                                break;
                            }
                        }
     
                        if (!exists)
                        {
                            string propVal = element.GetPropertyValue(propertyToInclude) as string;
                            PropertyCondition newCondition = new PropertyCondition(propertyToInclude, propVal);
                            conditionList.Add(newCondition);
                            updated = true;
                        }
                    }
     
                    if (updated)
                    {
                        queryElement.Condition.Conditions = conditionList.ToArray();
                    }
                }
            }
  5. Mengesampingkan GetPropertyValue metode UITechnologyElementProxykelas, dan kemudian menetapkan nilai sebagai tanda pertama dalam string deskripsi. Pelaksanaan ini akan berbeda didasarkan pada bagaimana Anda melewati custom properti. Jika Anda menggunakan kode injection untuk melewati properti, Anda harus membuat saluran dan kemudian mengambil properti dari tuan rumah, seperti dalam contoh berikut:
    public override object GetPropertyValue(string propertyName)
    {
        if (string.Equals(propertyName, ?<custom_property_name>?))
        {
            string accDesc = this.GetPropertyValue(<custom_property_name>) as string;
            if (accDesc != null)
            {
                string[] descriptionTokens = accDesc.Split(new char[] { ';' });
                return descriptionTokens[0];
            }
        }
        return base.GetPropertyValue(propertyName);
    }
  6. Menentukan manajer teknologi kustom di UITechnologyElementProxykelas, dan kemudian menghubungkannya dengan inti IUI teknologi elemen, seperti dalam contoh berikut:
    public RadGridViewTechnologyElement(CustomTechnologyManager technologyManager, IUITechnologyElement coreElement)
                : base(technologyManager, coreElement)
            {
            }
  7. Jika Anda memiliki kelas khusus untuk kode kustom generasi, dan jika Anda menambahkan properti tambahan kondisi dalam metode QueryID seperti yang dijelaskan pada langkah 4, Anda harus mengekspos properti kustom sebagai properti pencarian berlaku untuk elemen ini, seperti dalam contoh berikut:
    protected override Dictionary<string, bool> GetValidSearchProperties()
    {
        Dictionary<string, bool> validSearchProperties = base.GetValidSearchProperties();
        if (!validSearchProperties.ContainsKey(<custom_property_name>))
        {
            validSearchProperties.Add((<custom_property_name>, true);
        }
     
        return validSearchProperties;
    }
  8. Dalam ekstensi PropertyProvider , menambahkan kondisi untuk mengatur tingkat dukungan kontrol, seperti dalam contoh berikut.

    Catatan Ketika sifat-sifat uiTestControl metode yang diperoleh, kami menyarankan agar Anda menggunakan hanya properti yang tersedia dalam SearchProperties properti atau properti FilterProperties metode uiTestControl . Jangan mencoba untuk mengambil properti setiap tambahan, karena kawalan hidup tidak akan tersedia selama kode generasi.
    public override int GetControlSupportLevel(UITestControl uiTestControl)
            {
                if (IsSupported(uiTestControl))
                {
                    return (int)ControlSupport.ControlSpecificSupport;
                }
     
                return (int)ControlSupport.NoSupport;
            }
     
    private static bool IsSupported(UITestControl uiTestControl)
            {
                string accDescriptionValue = string.Empty;
                string objectType = string.Empty;
     
                if (uiTestControl.SearchProperties != null && uiTestControl.SearchProperties.Count > 0)
                {
                    PropertyExpression controlTypeExpression = uiTestControl.SearchProperties.Find(?<Custom_property_name>?);
                    if (controlTypeExpression != null)
                    {
                        accDescriptionValue = controlTypeExpression.PropertyValue;
                        string[] descriptionTokens = accDescriptionValue.Split(new char[] { ';' });
                        objectType = descriptionTokens[0];
                    }
                }
     
                if (string.Equals(uiTestControl.TechnologyName, ?<Custom_technology_name>?, StringComparison.OrdinalIgnoreCase)
                     && (objectType.Contains(?<Custom_property_value>?)))
                 
                {
     
                    return true;
                }
                return false;
            }
  9. Menerapkan metode yang UITestExtensionPackage , dan kemudian melampirkan layanan PropertyProvider dan TechnologyManager dengan meng-override metode GetService , seperti dalam contoh berikut:
    public override object GetService(Type serviceType)
    {
        Trace.WriteLine("RadGridViewExtensionPackage.GetService(" + serviceType.ToString() + ")");
        if (serviceType == typeof(UITestPropertyProvider))
            return this.PropertyProvider;
        else if (serviceType == typeof(UITechnologyManager))
            return this.TechnologyManager;
        return null;
    }

Memperbarui informasi

Perbaikan terbaru yang didukung tersedia dari Microsoft. Namun, perbaikan terbaru ini ditujukan untuk memperbaiki hanya masalah yang dijelaskan dalam artikel ini. Menerapkan perbaikan terbaru ini hanya pada sistem yang mengalami masalah yang dijelaskan dalam artikel ini. Perbaikan terbaru ini dapat menerima pengujian tambahan. Oleh karena itu, jika Anda sama sekali tidak dipengaruhi oleh masalah ini, kami menganjurkan Anda menunggu pembaruan peranti penangkap lunak berikutnya yang berisi perbaikan terbaru ini.

Jika perbaikan terbaru tersedia untuk di-download, ada bagian "Tersedia download perbaikan terbaru" di bagian atas dari artikel Pangkalan Pengetahuan ini. Apabila bagian ini tidak muncul, hubungi pelanggan layanan dan dukungan Microsoft untuk mendapatkan perbaikan terbaru.

Catatan Apabila terjadi masalah tambahan atau apabila pemecahan masalah apa pun diperlukan, Anda mungkin harus membuat Layanan Pertanyaan secara terpisah. Biaya dukungan biasa akan berhubungan dengan pertanyaan dan masalah yang tidak termasuk pada pembaruan terbaru tertentu ini dukungan tambahan. Untuk daftar lengkap nomor telepon pelanggan layanan dan dukungan Microsoft atau untuk membuat Layanan Pertanyaan tersendiri, kunjungi website Microsoft berikut:
http://support.Microsoft.com/contactus/?ws=support
Catatan Formulir "Tersedia download perbaikan terbaru" menampilkan bahasa untuk perbaikan terbaru tersedia. Jika Anda tidak melihat bahasa Anda, ini adalah karena perbaikan terbaru tidak tersedia untuk bahasa tersebut.

Prasyarat

Untuk menerapkan perbaikan terbaru ini, Anda harus memiliki paket layanan 1 (SP1) diterapkan untuk salah satu langkah berikut:
  • Microsoft Visual Studio 2010 Premium
  • Microsoft Visual Studio 2010 Ultimate
  • Microsoft Visual Studio 2010 tes profesional
  • Microsoft Visual Studio Team Foundation Server 2010
  • Microsoft Visual Studio Test agen 2010

Untuk informasi lebih lanjut tentang cara mendapatkan Visual Studio 2010 SP1, klik nomor artikel berikut ini untuk melihat artikel di dalam Pangkalan Pengetahuan Microsoft:
983509 Deskripsi dari Visual Studio 2010 paket layanan 1

Restart informasi

Anda mungkin harus me-restart komputer setelah Anda menerapkan perbaikan terbaru ini. Kami sarankan Anda keluar dari instalan komponen Visual Studio sebelum Anda menerapkan perbaikan terbaru ini.

Informasi penggantian perbaikan terbaru

Perbaikan terbaru ini tidak menggantikan perbaikan terbaru yang diluncurkan sebelumnya.

Informasi file

Perbaikan terbaru ini akan menginstal file yang memiliki atribut yang didaftar di dalam Daftar Tabel berikut. Tanggal dan waktu untuk berkas-berkas ini tercantum dalam Coordinated Universal Time (UTC). Tanggal dan waktu untuk berkas-berkas ini pada komputer lokal Anda akan ditampilkan dalam waktu lokal Anda bersama dengan Anda saat ini bias daylight saving time (DST). Selain itu, tanggal dan waktu dapat berubah ketika Anda melakukan operasi tertentu pada berkas.
Perkecil tabel iniPerbesar tabel ini
Nama fileVersi berkasUkuran fileTanggalWaktuPlatform
Leviewer.exe10.0.40219.396118,34428-Apr-201218: 41x 86
Microsoft.teamfoundation.Build.client.dll10.0.40219.396436,35227-Apr-20127: 59x 86
Microsoft.teamfoundation.Build.Controls.dll10.0.40219.3961,365,12828-Apr-201218: 41x 86
Microsoft.teamfoundation.client.dll10.0.40219.3961,595,51227-Apr-20127: 59x 86
Microsoft.teamfoundation.Common.dll10.0.40219.396525,43227-Apr-20127: 59x 86
Microsoft.teamfoundation.Common.Library.dll10.0.40219.396334,98427-Apr-20127: 59x 86
Microsoft.teamfoundation.Controls.dll10.0.40219.396938,61628-Apr-201218: 41x 86
Microsoft.teamfoundation.dll10.0.40219.396675,43227-Apr-20127: 59x 86
Microsoft.teamfoundation.Lab.activities.dll10.0.40219.396772,74428-Apr-201218: 41x 86
Microsoft.teamfoundation.Lab.client.dll10.0.40219.396153,21627-Apr-20127: 59x 86
Microsoft.teamfoundation.Lab.uiutils.dll10.0.40219.396266,88028-Apr-201218: 41x 86
Microsoft.teamfoundation.Lab.Workflow.activities.dll10.0.40219.396440,47228-Apr-201218: 41x 86
Microsoft.teamfoundation.officeintegration.Common.dll10.0.40219.396375,96828-Apr-201218: 41x 86
Microsoft.teamfoundation.officeintegration.Project.dll10.0.40219.396517,28028-Apr-201218: 41x 86
Microsoft.teamfoundation.Sync.Mapping.dll10.0.40219.39672,32028-Apr-201218: 41x 86
Microsoft.teamfoundation.Sync.provisioning.dll10.0.40219.396194,19228-Apr-201218: 41x 86
Microsoft.teamfoundation.testmanagement.activities.Common.dll10.0.40219.396315,05628-Apr-201218: 41x 86
Microsoft.teamfoundation.testmanagement.activities.dll10.0.40219.3961,512,09628-Apr-201218: 41x 86
Microsoft.teamfoundation.testmanagement.activityruntime.dll10.0.40219.396219,81628-Apr-201218: 41x 86
Microsoft.teamfoundation.testmanagement.client.dll10.0.40219.396685,20827-Apr-20127: 59x 86
Microsoft.teamfoundation.testmanagement.client.Themes.dll10.0.40219.3963,059,36828-Apr-201218: 41x 86
Microsoft.teamfoundation.testmanagement.client.wpfcontrols.dll10.0.40219.396257,71228-Apr-201218: 41x 86
Microsoft.teamfoundation.testmanagement.clientpackage.dll10.0.40219.39673,89628-Apr-201218: 41x 86
Microsoft.teamfoundation.testmanagement.Common.dll10.0.40219.39634,45627-Apr-20127: 59x 86
Microsoft.teamfoundation.testmanagement.controller.dll10.0.40219.396120,99228-Apr-201218: 41x 86
Microsoft.teamfoundation.testmanagement.Controls.dll10.0.40219.396496,28028-Apr-201218: 41x 86
Microsoft.teamfoundation.testmanagement.Controls.wpfworkitemcontrols.dll10.0.40219.396100,04028-Apr-201218: 41x 86
Microsoft.teamfoundation.VersionControl.client.dll10.0.40219.396706,20027-Apr-20127: 59x 86
Microsoft.teamfoundation.VersionControl.Common.dll10.0.40219.396233,11227-Apr-20127: 59x 86
Microsoft.teamfoundation.VersionControl.Controls.dll10.0.40219.3964,439,19228-Apr-201218: 41x 86
Microsoft.teamfoundation.workitemtracking.client.dll10.0.40219.396699,03227-Apr-20127: 59x 86
Microsoft.teamfoundation.workitemtracking.Controls.dll10.0.40219.3961,215,13628-Apr-201218: 41x 86
Microsoft.teamfoundation.workitemtracking.proxy.dll10.0.40219.396390,80827-Apr-20127: 59x 86
Microsoft.visualstudio.qualitytools.agentobject.dll10.0.40219.396106,64828-Apr-201218: 41x 86
Microsoft.visualstudio.qualitytools.Common.dll10.0.40219.3961,355,40828-Apr-201218: 41x 86
Microsoft.visualstudio.qualitytools.controllerobject.dll10.0.40219.396276,12828-Apr-201218: 41x 86
Microsoft.visualstudio.qualitytools.datacollectionagentobject.dll10.0.40219.39637,04828-Apr-201218: 41x 86
Microsoft.visualstudio.qualitytools.executioncommon.dll10.0.40219.396481,44028-Apr-201218: 41x 86
Microsoft.visualstudio.qualitytools.Resource.dll10.0.40219.396966,80028-Apr-201218: 41x 86
Microsoft.visualstudio.qualitytools.testcasemanagement.dll10.0.40219.3961,280,16828-Apr-201218: 41x 86
Microsoft.visualstudio.qualitytools.TMI.dll10.0.40219.396398,47228-Apr-201218: 41x 86
Microsoft.visualstudio.teamfoundation.Build.dll10.0.40219.396142,48028-Apr-201218: 41x 86
Microsoft.visualstudio.teamfoundation.dll10.0.40219.39693,82428-Apr-201218: 41x 86
Microsoft.visualstudio.teamfoundation.teamexplorer.dll10.0.40219.396799,90428-Apr-201218: 41x 86
Microsoft.visualstudio.teamfoundation.VersionControl.dll10.0.40219.39659,04828-Apr-201218: 41x 86
Microsoft.visualstudio.teamfoundation.VersionControl.dll10.0.40219.39659,56028-Apr-201218: 41x 86
Microsoft.visualstudio.teamfoundation.VersionControl.dll10.0.40219.39661,09628-Apr-201218: 41x 86
Microsoft.visualstudio.teamfoundation.VersionControl.dll10.0.40219.39663,65628-Apr-201218: 41x 86
Microsoft.visualstudio.teamfoundation.VersionControl.dll10.0.40219.396942,24028-Apr-201218: 41x 86
Microsoft.visualstudio.teamfoundation.workitemtracking.dll10.0.40219.396460,96828-Apr-201218: 41x 86
Microsoft.visualstudio.teamsystem.Integration.dll10.0.40219.396193,17628-Apr-201218: 41x 86
Microsoft.visualstudio.testtools.manualtest.Common.dll10.0.40219.396813,21628-Apr-201218: 41x 86
Microsoft.visualstudio.testtools.uitest.codegeneration.dll10.0.40219.396155,30428-Apr-201218: 41x 86
Microsoft.visualstudio.testtools.uitest.Extension.dll10.0.40219.396193,69628-Apr-201218: 41x 86
Microsoft.visualstudio.testtools.uitest.Extension.ie.dll10.0.40219.396252,06428-Apr-201218: 41x 86
Microsoft.visualstudio.testtools.uitest.Extension.MSAA.dll10.0.40219.396115,36828-Apr-201218: 41x 86
Microsoft.visualstudio.testtools.uitest.Extension.UIA.dll10.0.40219.396107,17628-Apr-201218: 41x 86
Microsoft.visualstudio.testtools.uitest.Framework.dll10.0.40219.39658,01628-Apr-201218: 41x 86
Microsoft.visualstudio.testtools.uitest.Playback.dll10.0.40219.39666,20028-Apr-201218: 41x 86
Microsoft.visualstudio.testtools.uitest.recorder.dll10.0.40219.396230,04028-Apr-201218: 41x 86
Microsoft.visualstudio.testtools.uitesting.dll10.0.40219.396339,60028-Apr-201218: 41x 86
Msdiff.dll10.0.40219.396485,44828-Apr-201218: 41x 86
MTM.exe10.0.40219.396449,08828-Apr-201218: 41x 86
Qtagent.exe10.0.40219.39621,06428-Apr-201218: 41x 86
Qtagent.exe10.0.40219.39621,07228-Apr-201218: 41x 86
Qtagent32.exe10.0.40219.39621,06428-Apr-201218: 41x 86
Qtagent32.exe10.0.40219.39621,07228-Apr-201218: 41x 86
Qtagentservice.exe10.0.40219.39699,92828-Apr-201218: 41x 86
Rpfplayback.dll10.0.40219.396482,47228-Apr-201218: 41x 86
TF.exe10.0.40219.396325,69628-Apr-201218: 41x 86


REFERENSI

Untuk informasi lebih lanjut mengenai terminologi pembaruan peranti penangkap lunak, klik nomor artikel berikut ini untuk melihat artikel di dalam Pangkalan Pengetahuan Microsoft:
824684 Keterangan tentang terminologi standar yang digunakan untuk menjelaskan pembaruan peranti penangkap lunak Microsoft

Properti

ID Artikel: 2696646 - Kajian Terakhir: 23 Mei 2012 - Revisi: 1.0
Berlaku bagi:
  • Microsoft Visual Studio 2010 Service Pack 1, ketika digunakan dengan:
    • Microsoft Visual Studio 2010 Ultimate
    • Microsoft Visual Studio 2010 Premium
    • Microsoft Visual Studio Test Professional 2010
    • Microsoft Visual Studio Team Foundation Server 2010
    • Microsoft Visual Studio Team Agents 2010
Kata kunci: 
kbautohotfix kbqfe kbhotfixserver kbfix kbbug kbexpertiseinter kbsurveynew kbmt KB2696646 KbMtid
Penerjemahan 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: 2696646

Berikan Masukan

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com