Nasıl yapılır: etkin görsel stiller ile wpf uygulama yayımlama
Kullanıcı tarafından seçilen tema, temel alarak değiştirmek için ortak denetimlerinin görünümünü görsel stilleri etkinleştir. El ile etkinleştirmeniz gerekir böylece varsayılan olarak, Windows sunu Foundation (wpf) uygulamaları için görsel stiller etkin değildir. Ancak, wpf uygulama için görsel stilleri etkinleştirmek ve sonra yayımlama çözümü hataya neden olur. Bu konuda, bu hata ve etkin görsel stiller ile wpf uygulama yayımlama işlemi çözme yöntemleri açıklanmıştır. Görsel stiller hakkında daha fazla bilgi için bkz: Visual Styles Overview. Hata iletisi hakkında daha fazla bilgi için bkz: ClickOnce Dağıtımları İçinde Belirli Hataları Giderme.
Hatayı gidermek ve çözüm yayınlamak için aşağıdaki görevleri gerçekleştirmeniz gerekir:
Çözüm etkin görsel stiller yayımlamak için.
Bildirim dosyası oluşturmak için.
Bildirim dosyası yayımlanmış çözüm yürütülebilir dosyasına gömmek için.
Uygulama ve dağıtım imzalamak için bildirimler.
Daha sonra yayımlanan dosyaların son kullanıcıların uygulamayı yüklemek istediğiniz konuma taşıyabilirsiniz.
Çözüm etkin görsel stiller yayımlamak için
Projenizi görsel stillerini etkin olmadığından emin olun. İlk olarak, projenizin bildirim dosyası aşağıdaki xml için denetleyin. xml varsa, daha sonra xml açıklama etiketine ile alın.
Görsel stiller varsayılan olarak etkin değildir.
<dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency>
Aşağıdaki yordamlar, projeyle ilişkili bildirim dosyasını açmak nasıl gösterir.
Visual Basic projesinde, bildirim dosyasını açmak için
Menü çubuğunda Seç Proje, ProjeAdıözellikleri, ProjeAdı wpf projenizi adıdır.
wpf projeniz için özellik sayfaları görüntülenir.
Üzerinde Uygulama sekmesinde, seçim Windows ayarlarını görüntüleme.
App.manifest dosya açılır Kod Düzenleyicisi'ni.
Bir C# projesi bildirim dosyasını açmak için
Menü çubuğunda Seç Proje, ProjeAdıözellikleri, ProjeAdı wpf projenizi adıdır.
wpf projeniz için özellik sayfaları görüntülenir.
Üzerinde Uygulama sekmesinde, bildirim alanında görüntülenen adını not alın. Proje ile ilişkili liste adıdır.
Not
Embed bildirimi varsayılan ayarlarla veya uygulama bildirim olmadan oluşturmak görsel stillerini etkin değil bildirim alanında görüntülenir.Bildirim dosyası adını bildirim alanında görünüyorsa, bu yordamın bir sonraki adımına geçin.
İçinde Solution Explorer, seçim Show All Files ().
Bu düğme, dışlanmış ve normalde gizli olanlar da dahil olmak üzere, tüm proje öğeleri gösterir. Bildirim dosyası bir proje öğesi görünür.
Yapı ve çözümünüzün yayımlayın. Çözüm yayımlama hakkında daha fazla bilgi için bkz: Nasıl yapılır: Yayımlama Sihirbazı'nı kullanarak bir ClickOnce uygulama yayımlama.
Bildirim dosyası oluşturmak için
Aşağıdaki xml bir not defteri dosyasına yapıştırın.
Bu xml görsel stiller destekleyen denetimler içeren derleme açıklar.
<?xml version="1.0" encoding="utf-8"?><asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency></asmv1:assembly>
Not Defteri'nde tıklatın Dosyave ardından Farklı Kaydet.
İçinde Farklı Kaydet iletişim kutusunda Kayıt türü aşağı açılan liste, seçme Tüm dosyaları.
İçinde Dosya adı kutusuna, dosya adı ve çalışma dosya adının sonuna. Örneğin: themes.manifest.
Seçim Klasörlere Gözat düğmesini, herhangi bir klasörü seçin ve ardından kaydetmek.
Not
Kalan yordamları, C:\temp dizinine dosya bilgisayarınıza kaydedilir ve bu dosyanın adı themes.manifest olduğunu varsayalım.
Bildirim dosyası yayımlanmış çözüm yürütülebilir dosyasına gömmek için
Açık Visual Studio komut istemi.
Nasıl açılacağı hakkında daha fazla bilgi için Visual Studio Command Prompt, bkz: Visual Studio ve Windows sdk komut istemleri.
Not
Kalan adımları çözümünüz hakkında aşağıdaki varsayımlar olun:
-
Çözüm MyWPFProject adıdır.
-
Çözüm aşağıdaki dizinde bulunur: %UserProfile%\Documents\Visual Studio 2010\Projects\.
Çözüm aşağıdaki dizine yayımlanır: %UserProfile%\Documents\Visual Studio 2010\Projects\publish.
-
Yayımlanan uygulama dosyalarını en son sürümü aşağıdaki dizinde bulunur:%UserProfile%\Documents\Visual Studio 2010\Projects\publish\Application Files\WPFApp_1_0_0_0
Adı veya yukarıda tanımlanan dizin konumları kullanmak zorunda değil.Adı ve yukarıda açıklanan konumlarda yalnızca çözümünüz yayımlamak için gereken adımları göstermek için kullanılır.
-
Komut isteminde yayımlanan uygulama dosyalarını en son sürümünü içeren dizin yolu değiştirin. Bu adım aşağıdaki örnekte gösterilmiştir.
cd "%UserProfile%\Documents\Visual Studio 2010\Projects\MyWPFProject\publish\Application Files\WPFApp_1_0_0_0"
Komut isteminde, bildirim dosyası uygulamanın yürütülebilir dosyasına gömmek için aşağıdaki komutu çalıştırın.
mt –manifest c:\temp\themes.manifest –outputresource:MyWPFApp.exe.deploy
Uygulama ve dağıtım imzalamak için bildirimler
Kaldırmak için aşağıdaki komutu komut isteminde çalıştırın .deploy geçerli dizinde yürütülebilir dosya uzantısı.
ren MyWPFApp.exe.deploy MyWPFApp.exe
Not
Bu örnekte, tek bir dosyanın kabul .deploy dosya uzantısı.Olan bu dizindeki tüm dosyaları yeniden adlandırdığınızdan emin olun .deploy dosya uzantısı.
Komut isteminde, uygulama bildirimi imzalamak için aşağıdaki komutu çalıştırın.
mage -u MyWPFApp.exe.manifest -cf ..\..\..\MyWPFApp_TemporaryKey.pfx
Not
Bu örnekte, liste kullanarak oturum kabul .pfx proje dosyası.Bildirim imzalama değil, atlayabilirsiniz –cf Bu örnekte kullanılan parametre.Parola gerektiren bir sertifika ile bildirim imzalıyorsanız belirtmek –password seçeneği (For example: mage –u MyWPFApp.exe.manifest –cf ..\..\..\MyWPFApp_TemporaryKey.pfx – password Password).
Eklemek için aşağıdaki komutu komut isteminde çalıştırın .deploy bu yordamın bir önceki adımda yeniden adlandırılmış dosya adı uzantısı.
ren MyWPFApp.exe MyWPFApp.exe.deploy
Not
Bu örnekte, tek bir dosya kabul olduğu bir .deploy dosya uzantısı.Önceden bu dizindeki tüm dosyaların yeniden adlandırdığınızdan emin olun .deploy dosya adı uzantısı.
Komut satırında dağıtım listesi imzalamak için aşağıdaki komutu çalıştırın.
mage -u ..\..\MyWPFApp.application -appm MyWPFApp.exe.manifest -cf ..\..\..\MyWPFApp_TemporaryKey.pfx
Not
Bu örnekte, liste kullanarak oturum kabul .pfx proje dosyası.Bildirim imzalama değil, atlayabilirsiniz –cf Bu örnekte kullanılan parametre.Parola gerektiren bir sertifika ile bildirim imzalıyorsanız belirtmek –password Bu örnekte olduğu gibi seçenek:For example: mage –u MyWPFApp.exe.manifest –cf ..\..\..\MyWPFApp_TemporaryKey.pfx – password Password.
Bu adımları gerçekleştirdikten sonra yayınlanmış dosyaları son kullanıcıların uygulamayı yüklemek istediğiniz konuma taşıyabilirsiniz. Çözüm genellikle güncelleştirmek istiyorsanız, bu komutları bir komut dosyasına taşımak ve her zaman yeni bir sürümünü yayımlama komut dosyasını çalıştırın.
Ayrıca bkz.
Başvuru
Enabling Visual Styles
Visual Studio ve Windows sdk komut istemleri
Kavramlar
ClickOnce Dağıtımları İçinde Belirli Hataları Giderme