Aracılığıyla paylaş


İzlenecek yol: Bir Gizlilik İstemi Göstermek Üzere Özel Bir Önyükleyici Oluşturmak

Daha yeni dosya sürümleri ve derleme sürümleri içeren derlemeler mevcut olduğunda, otomatik olarak güncelleştirmek için ClickOnce uygulamalarını yapılandırabilirsiniz.Müşterilerinizin için bu davranışı kabul ettiğinden emin olmak için onlara bir gizlilik istemi görüntülenmesini sağlayabilirsiniz.Ardından onlar uygulamayı otomatik olarak güncelleştirmek için izin verip vermemeyi seçebilirler.Uygulamanın otomatik olarak güncelleştirilmesine izin verilmiyorsa, yüklemez.

[!NOT]

Bilgisayarınızda, aşağıdaki yönergelerde yer alan Visual Studio kullanıcı arabirimi öğelerinden bazılarının adı veya konumu farklı gösterilebilir. Bu öğeleri bilgisayarınızdaki Visual Studio sürümü ve kullandığınız ayarlar belirler. Daha fazla bilgi için bkz: Visual Studio ayarları.

Önkoşullar

Bu örneği tamamlamak için aşağıdaki bileşenler gerekmektedir:

  • Visual Studio 2010.

Güncelleştirme Onayı İletişim Kutusu Oluşturma

Bir gizlilik istemini görüntülemek için okuyucudan uygulama için otomatik güncelleştirmeleri kabul etmesini isteyen bir uygulama oluşturun.

Bir onay iletişim kutusu oluşturmak için

  1. Dosya menüsünde, Yeni'nin üzerine gelin ve Proje'ye tıklatın.

  2. Yeni Proje iletişim kutusunda, Windows'u ve sonra da WindowsFormsUygulaması'nı tıklatın.

  3. Ad için ConsentDialog yazın ve Tamam'ı tıklatın.

  4. Tasarımcıda formu tıklatın.

  5. Özellikler penceresinde, Metin özelliğini Güncelleştirme Onayı İletişim Kutusu'na şu şekilde değiştirin:

  6. Araç Kutusu'nda Tüm Windows Formları'nı genişletin ve formu denetlemek için bir Etiket'i sürükleyin.

  7. Tasarımcıda etiket denetimini tıklatın.

  8. Özellikler penceresinde, Görünüm altındaki Metin özelliğini şu şekilde değiştirin:

    Yüklemek üzere olduğunuz uygulama, Web'deki en son güncelleştirmeleri denetler."Kabul ediyorum" düğmesini tıklatarak, uygulamaya güncelleştirmeleri Internet üzerinden otomatik olarak denetleyip yüklemesi için yetki verirsiniz.

  9. Araç Kutusu'nda Onay Kutusu denetimini formun orta bölümüne sürükleyin.

  10. Özellikler penceresinde, Düzen'in altındaki Metin özelliğini Kabul Ediyorum olarak değiştirin.

  11. Araç Kutusu'nda Düğme denetimini formun sol altına sürükleyin.

  12. Özellikler penceresinde, Düzen'in altındaki Metin özelliğini İlerle olarak değiştirin.

  13. Özellikler penceresinde, Tasarım'ın altındaki (Name) özelliğini ProceedButton öğesine değiştirin.

  14. Araç Kutusu'nda Düğme denetimini formun sağ altına sürükleyin.

  15. Özellikler penceresinde, Düzen'in altındaki Metin özelliğini İptal olarak değiştirin.

  16. Özellikler penceresinde, Tasarım'ın altındaki (Name) özelliğini CancelButton öğesine değiştirin.

  17. Tasarımcıda, CheckedChanged olay işleyicisi oluşturmak için Kabul Ediyorum onay kutusunu çift tıklatın.

  18. Form1 kod dosyasına CheckedChanged olay işleyicisi için aşağıdaki kodu ekleyin.

    Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged
        ProceedButton.Enabled = Not ProceedButton.Enabled
    End Sub
    
    private void checkBox1_CheckedChanged(object sender, EventArgs e)
    {
        ProceedButton.Enabled = !ProceedButton.Enabled;
    }
    
  19. İlerle düğmesini varsayılan olarak devre dışı bırakmak için sınıf oluşturucusunu güncelleştirin.

    Public Sub New()
        InitializeComponent()
        ProceedButton.Enabled = False
    End Sub
    
    public Form1()
    {
        InitializeComponent();
        ProceedButton.Enabled = false;
    }
    
  20. Form1 kod dosyasına son kullanıcının çevrimiçi güncelleştirmeleri onaylayıp onaylamadığını izlemek için aşağıdaki Boolean değişkeni kodunu ekleyin.

    Public accepted As Boolean = False
    
    public bool accepted = false;
    
  21. Tasarımcıda Click olay işleyicisi oluşturmak için İlerle düğmesini çift tıklatın.

  22. Form1 kod dosyasında, İlerle düğmesinin Click olay işleyicisine aşağıdaki kodu ekleyin.

    Private Sub ProceedButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProceedButton.Click
        If ProceedButton.Enabled Then
            accepted = True
            Me.Close()
        End If
    End Sub
    
    private void ProceedButton_Click(object sender, EventArgs e)
    {
        if (ProceedButton.Enabled)
        {
            accepted = true;
            this.Close();
        }
    }
    
  23. Tasarımcısında Click olay işleyicisi oluşturmak için İptal düğmesini çift tıklatın.

  24. Form1 kod dosyasına İptal düğmesinin Click olay işleyicisi için aşağıdaki kodu ekleyin.

    Private Sub CancelButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CancelButton.Click
        Me.Close()
    End Sub
    
    private void CancelButton_Click(object sender, EventArgs e)
    {
        this.Close();
    }
    
  25. Uygulamayı son kullanıcı çevrimiçi güncelleştirmelere onay vermezse bir hata döndürecek şekilde güncelleştirin.

    Yalnızca Visual Basic geliştiricileri için:

    1. Çözüm Gezgini'nde, ConsentDialog öğesini tıklatın.

    2. Proje menüsünde, Modül Ekle'yi ve sonra Ekle'yi tıklatın.

    3. Module1.vb dosyasına aşağıdaki kodu ekleyin:

      Module Module1
      
          Function Main() As Integer
              Application.EnableVisualStyles()
              Application.SetCompatibleTextRenderingDefault(False)
              Dim f As New Form1()
              Application.Run(f)
              If (Not f.accepted) Then
                  Return -1
              Else
                  Return 0
              End If
          End Function
      
      End Module
      
    4. Proje menüsünde ConsentDialog Özellikleri'ni ve ardından Uygulama sekmesini tıklatın.

    5. Uygulama Çatısını Etkinleştir kutusunu boş bırakın.

    6. Başlangıç nesnesi açılır menüsünden Module1 öğesini seçin.

      [!NOT]

      Uygulama çerçevesinin devre dışı bırakılması Windows XP görsel stiller, uygulama olayları, karşılama ekranı, tek örnek uygulaması ve daha fazlası gibi özellikleri devre dışı bırakır.Daha fazla bilgi için bkz. Uygulama sayfası, proje Tasarımcısı (Visual Basic).

    Yalnızca Visual C# geliştiricileri için:

    Program.cs kod dosyasını açın ve şu kodu ekleyin.

    static int Main()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Form1 f = new Form1();
        Application.Run(f);
        if (!f.accepted)
            return -1;
        else
            return 0;
    }
    
  26. Yapı menüsünde, Çözümü Derle'yi tıklatın.

Özel Önyükleyici Paketi Oluşturma

Son kullanıcılara gizlilik istemini göstermek için Güncelleştirme Onayı İletişim uygulaması için özelleştirmiş bir önyükleyici paketi oluşturabilir ve tüm ClickOnce uygulamalarınızda bunu bir önkoşul olarak dahil edebilirsiniz.

Bu yordam, aşağıdaki belgeleri oluşturarak özel bir önyükleyici paketin nasıl oluşturulacağını göstermektedir:

  • Önyükleyici içeriğini açıklamak için bir product.xml dosyası.

  • Paketinizin dizeler ve Yazılım Lisans Koşulları gibi yerelleştirmeye özgü yönlerini listelemek için package.xml bildirim dosyası.

  • Yazılım lisans koşulları belgesi.

Adım 1: Önyükleyici dizini oluşturmak

  1. %PROGRAMFILES%\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages üzerinde UpdateConsentDialog adlı bir dizin oluşturun.

    [!NOT]

    Bu klasörü oluşturmak için yönetim ayrıcalıklarına ihtiyacınız var.

  2. UpdateConsentDialog dizininde, tr adlı bir alt dizin oluşturun.

    [!NOT]

    Her yerel ayar için yeni bir dizin oluşturun.Örneğin, fr ve de yerel ayarları için alt dizinler ekleyebilirsiniz.Bu dizinler gerekirse, Fransızca ve Almanca dizeleri ve dil paketlerini içerir.

Adım 2: product.xml bildiri dosyasını oluşturmak

  1. product.xml adlı bir metin dosyası oluşturun.

  2. product.xml dosyasına aşağıdaki XML kodunu ekleyin:Var olan XML kodunun üzerine yazmayın.

    <Product
      xmlns="https://schemas.microsoft.com/developer/2004/01/bootstrapper"
      ProductCode="Microsoft.Sample.EULA">
      <!-- Defines the list of files to be copied on build. -->
      <PackageFiles CopyAllPackageFiles="false">
        <PackageFile Name="ConsentDialog.exe"/>
      </PackageFiles>
    
      <!-- Defines how to run the Setup package.-->
      <Commands >
        <Command PackageFile = "ConsentDialog.exe" Arguments=''>
          <ExitCodes>
            <ExitCode Value="0" Result="Success" />
            <ExitCode Value="-1" Result="Fail" String="AU_Unaccepted" />
            <DefaultExitCode Result="Fail" 
              FormatMessageFromSystem="true" String="GeneralFailure" />
          </ExitCodes>
        </Command>
      </Commands>
    
    </Product>
    
  3. Dosyayı UpdateConsentDialog bootstrapper dizinine kaydedin.

Adım 3: package.xml bildiri dosyasını ve yazılım lisans şartlarını oluşturmak

  1. package.xml adlı bir metin dosyası oluşturun.

  2. Yereli tanımlamak ve yazılım lisans koşullarını eklemek için package.xml dosyasına aşağıdaki XML kodunu ekleyin.Var olan XML kodunun üzerine yazmayın.

    <Package 
      xmlns="https://schemas.microsoft.com/developer/2004/01/bootstrapper"
      Name="DisplayName"
      Culture="Culture"
      LicenseAgreement="eula.rtf">
      <PackageFiles>
        <PackageFile Name="eula.rtf"/>
      </PackageFiles>
    
      <!-- Defines a localizable string table for error messages. -->
      <Strings>
        <String Name="DisplayName">Update Consent Dialog</String>
        <String Name="Culture">en</String>
        <String Name="AU_Unaccepted">The automatic update agreement is not accepted.</String>
        <String Name="GeneralFailure">A failure occurred attempting to launch the setup.</String>
      </Strings>
    </Package>
    
  3. Dosyayı UpdateConsentDialog bootstrapper dizini içindeki tr altdizinine kaydedin.

  4. Yazılım lisans koşulları için eula.rtf adlı bir belge oluşturun.

    [!NOT]

    Yazılım lisans koşulları lisanslama, garantiler, yükümlülükler ve yerel kanunlar hakkında bilgi içermelidir.Bu dosyalar, bölgeye özgü olmalıdır, bu nedenle dosyanın MBCS veya UNICODE karakterlerini destekleyen bir biçimde kaydedildiğinden emin olun.Yazılım lisans koşullarının içeriği hakkında hukuk bölümünüze danışın.

  5. Belgeyi UpdateConsentDialog bootstrapper dizini içindeki tr altdizinine kaydedin.

  6. Gerekirse, her yerel yazılım lisans koşulu için yeni package.xml bildirim dosyası ve yeni bir eula.rtf belgesi oluşturun.Örneğin, fr ve de yerel ayarları için alt dizinler oluşturursanız, ayrı .xml bildirim dosyaları ve yazılım lisans koşulları oluşturabilir ve bunları fr ve de alt dizinlerine kaydedebilirsiniz.

Güncelleştirme Onayı Uygulamasını bir Önkoşul olarak Ayarlama

Visual Studio'da Güncelleştirme Onayı uygulamasını önkoşul olarak ayarlayabilirsiniz.

Güncelleştirme Onayı Uygulaması'nı bir önkoşul olarak ayarlamak için

  1. Çözüm Gezgini'nde, dağıtmak istediğiniz uygulamanızın adını tıklatın.

  2. Proje menüsünde, ProjectName Özellikler'i tıklayın.

  3. Yayınlama sayfasını tıklatın ardından Önkoşullar seçeneğini tıklatın.

  4. İzin Alma İletişim Kutusunu Güncelleştir'i seçin.

    [!NOT]

    Önkoşullar İletişim kutusunda İletişim İznini Güncelleştirme'yi görmek için Visual Studio'yu kapatıp yeniden açmanız gerekebilir.

  5. Tamam düğmesini tıklatın.

Kurulum Programını Oluşturma ve Test etme

Güncelleştirme Onayı uygulamasını bir önkoşul olarak ayarladıktan sonra, uygulamanız için yükleyici ve önyükleyici oluşturabilirsiniz.

Kurulum programını Kabul ediyorum'u tıklamadan oluşturmak ve test etmek için

  1. Çözüm Gezgini'nde, dağıtmak istediğiniz uygulamanızın adını tıklatın.

  2. Proje menüsünde, ProjectName Özellikler'i tıklayın.

  3. Yayınlama sayfasını tıklatın ardından Şimdi Yayınla seçeneğini tıklatın.

  4. Yayımlama çıktısı otomatik olarak açılmazsa yayımlama çıktısına gidin.

  5. Setup.exe programını çalıştırın.

    Kurulum programı, İzin Alma İletişim Kutusunu Güncelle yazılım lisans sözleşmesini gösterir.

  6. Yazılım lisansı sözleşmesini okuyun ve Kabul Ediyorum'u tıklatın.

    İzin Alma İletişim Kutusunu Güncelleştir uygulaması görüntülenir ve aşağıdaki metni gösterir: Yüklemek üzere olduğunuz uygulama Web üzerindeki en son güncelleştirmeleri denetler."Kabul ediyorum" düğmesini tıklatarak, uygulamaya güncelleştirmeleri Internet üzerinden otomatik olarak denetlemesi için yetki verirsiniz.

  7. Uygulamayı kapatın veya İptal seçeneğini tıklatın.

    Uygulama bir hata gösterir: ApplicationNameiçin sistem bileşenlerini yüklerken bir hata oluştu.Tüm sistem bileşenleri başarıyla yüklenene kadar kurulum devam edemez.

  8. Şu hata iletisini görüntülemek için Ayrıntılar seçeneğini tıklatın: Bileşen Güncelleştirme Onayı İletişim Kutusu şu hata iletisiyle başarısız oldu: "Otomatik güncelleştirme anlaşması kabul edilmedi." Aşağıdaki bileşenler yüklemeyi başaramadılar: - İzin Alma İletişim Kutusunu Güncelle

  9. Kapat'ı tıklatın.

Kurulum programını Kabul ediyorum'u tıklayarak oluşturmak ve test etmek için

  1. Çözüm Gezgini'nde, dağıtmak istediğiniz uygulamanızın adını tıklatın.

  2. Proje menüsünde, ProjectName Özellikler'i tıklayın.

  3. Yayınlama sayfasını tıklatın ardından Şimdi Yayınla seçeneğini tıklatın.

  4. Yayımlama çıktısı otomatik olarak açılmazsa yayımlama çıktısına gidin.

  5. Setup.exe programını çalıştırın.

    Kurulum programı, İzin Alma İletişim Kutusunu Güncelle yazılım lisans sözleşmesini gösterir.

  6. Yazılım lisansı sözleşmesini okuyun ve Kabul Ediyorum'u tıklatın.

    İzin Alma İletişim Kutusunu Güncelleştir uygulaması görüntülenir ve aşağıdaki metni gösterir: Yüklemek üzere olduğunuz uygulama Web üzerindeki en son güncelleştirmeleri denetler."Kabul ediyorum" düğmesini tıklatarak, uygulamaya güncelleştirmeleri Internet üzerinden otomatik olarak denetlemesi için yetki verirsiniz.

  7. Kabul Ediyorum seçeneğini ardından İlerle seçeneğini tıklatın.

    Uygulama, yüklemeye başlar.

  8. Uygulama Yükle iletişim kutusu görüntülenirse, Yükle'yi tıklatın.

Ayrıca bkz.

Görevler

Ürün Bildirimi Nasıl Oluşturulur

Paket Bildirimi Nasıl Oluşturulur

Başvuru

Ürün ve Paket Şema Başvurusu

Kavramlar

Uygulama Dağıtımının Önkoşulları

Önyükleyici Paketleri Oluşturma