Menerbitkan aplikasi WPF dengan gaya visual diaktifkan
Gaya visual memungkinkan tampilan kontrol umum berubah berdasarkan tema yang dipilih oleh pengguna. Secara default, gaya visual tidak diaktifkan untuk aplikasi Windows Presentation Foundation (WPF), jadi Anda harus mengaktifkannya secara manual. Namun, mengaktifkan gaya visual untuk aplikasi WPF dan kemudian menerbitkan solusi menyebabkan kesalahan. Topik ini menjelaskan cara mengatasi kesalahan ini dan proses untuk menerbitkan aplikasi WPF dengan gaya visual diaktifkan. Untuk informasi selengkapnya tentang gaya visual, lihat Gambaran umum gaya visual. Untuk informasi selengkapnya tentang pesan kesalahan, lihat Memecahkan masalah kesalahan tertentu dalam penyebaran ClickOnce.
Untuk mengatasi kesalahan dan menerbitkan solusi, Anda harus melakukan tugas berikut:
Buat file manifes.
Sematkan file manifes ke dalam file yang dapat dieksekusi dari solusi yang diterbitkan.
Tanda tangani manifes aplikasi dan penyebaran.
Kemudian, Anda dapat memindahkan file yang diterbitkan ke lokasi tempat Anda ingin pengguna akhir menginstal aplikasi.
Menerbitkan solusi tanpa gaya visual diaktifkan
Pastikan proyek Anda tidak mengaktifkan gaya visual. Pertama, periksa file manifes proyek Anda untuk XML berikut. Kemudian, jika XML ada, sertakan XML dengan tag komentar.
Secara default, gaya visual tidak diaktifkan.
<dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency>
Prosedur berikut menunjukkan cara membuka file manifes yang terkait dengan proyek Anda.
Untuk membuka file manifes dalam proyek Visual Basic
Pada bilah menu, pilih Project, ProjectNameProperties, di mana ProjectName adalah nama proyek WPF Anda.
Halaman properti untuk proyek WPF Anda muncul.
Pada tab Aplikasi, pilih Tampilkan Windows Pengaturan.
File app.manifest terbuka di Editor Kode.
Untuk membuka file manifes dalam proyek C#
Pada bilah menu, pilih Project, ProjectNameProperties, di mana ProjectName adalah nama proyek WPF Anda.
Halaman properti untuk proyek WPF Anda muncul.
Pada tab Aplikasi , catat nama yang muncul di bidang manifes. Ini adalah nama manifes yang terkait dengan proyek Anda.
Catatan
Jika Sematkan manifes dengan pengaturan default atau Buat aplikasi tanpa manifes muncul di bidang manifes, gaya visual tidak diaktifkan. Jika nama file manifes muncul di bidang manifes, lanjutkan ke langkah berikutnya dalam prosedur ini.
Di Penjelajah Solusi, pilih Tampilkan Semua File.
Tombol ini menunjukkan semua item proyek, termasuk item yang telah dikecualikan dan item yang biasanya disembunyikan. File manifes muncul sebagai item proyek.
Bangun dan terbitkan solusi Anda. Untuk informasi selengkapnya tentang cara menerbitkan solusi, lihat Cara: Menerbitkan aplikasi ClickOnce menggunakan Wizard Terbitkan.
Membuat file manifes
Tempelkan XML berikut ke dalam file.
XML ini menjelaskan rakitan yang berisi kontrol yang mendukung gaya visual.
<?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>
Di Notepad, klik File, lalu klik Simpan Sebagai.
Dalam kotak dialog Simpan Sebagai , di daftar drop-down Simpan sebagai jenis , pilih Semua File.
Dalam kotak Nama file, beri nama file dan tambahkan .manifest ke akhir nama file. Misalnya: themes.manifest.
Pilih tombol Telusuri Folder , pilih folder apa pun, lalu klik Simpan.
Catatan
Prosedur yang tersisa mengasumsikan bahwa nama file ini adalah themes.manifest dan bahwa file disimpan ke direktori C:\temp di komputer Anda.
Sematkan file manifes ke dalam file yang dapat dieksekusi dari solusi yang diterbitkan
Buka Prompt Perintah Pengembang untuk Visual Studio.
Untuk informasi selengkapnya tentang cara membuka Developer Command Prompt untuk Visual Studio, lihat Developer Command Prompt dan Developer PowerShell.
Catatan
Langkah-langkah yang tersisa membuat asumsi berikut tentang solusi Anda:
Nama solusinya adalah MyWPFProject.
Solusinya terletak di direktori berikut:
%UserProfile%\Documents\Visual Studio version\Projects\
.Solusinya diterbitkan ke direktori berikut:
%UserProfile%\Documents\Visual Studio version\Projects\publish
.Versi terbaru dari file aplikasi yang diterbitkan terletak di direktori berikut:
%UserProfile%\Documents\Visual Studio version\Projects\publish\Application Files\WPFApp_1_0_0_0
Anda tidak perlu menggunakan nama atau lokasi direktori yang dijelaskan di atas. Nama dan lokasi yang dijelaskan di atas hanya digunakan untuk mengilustrasikan langkah-langkah yang diperlukan untuk menerbitkan solusi Anda.
Pada prompt perintah, ubah jalur ke direktori yang berisi versi terbaru dari file aplikasi yang diterbitkan. Contoh berikut menunjukkan langkah ini.
cd "%UserProfile%\Documents\Visual Studio version\Projects\MyWPFProject\publish\Application Files\WPFApp_1_0_0_0"
Pada prompt perintah, jalankan perintah berikut untuk menyematkan file manifes ke dalam file aplikasi yang dapat dieksekusi.
mt -manifest c:\temp\themes.manifest -outputresource:MyWPFApp.exe.deploy
Menandatangani manifes aplikasi dan penyebaran
Pada prompt perintah, jalankan perintah berikut untuk menghapus ekstensi .deploy dari file yang dapat dieksekusi di direktori saat ini.
ren MyWPFApp.exe.deploy MyWPFApp.exe
Catatan
Contoh ini mengasumsikan bahwa hanya satu file yang memiliki ekstensi file .deploy . Pastikan Anda mengganti nama semua file di direktori ini yang memiliki ekstensi file .deploy .
Pada prompt perintah, jalankan perintah berikut untuk menandatangani manifes aplikasi.
mage -u MyWPFApp.exe.manifest -cf ..\..\..\MyWPFApp_TemporaryKey.pfx
Catatan
Contoh ini mengasumsikan bahwa Anda menandatangani manifes dengan menggunakan file .pfx proyek. Jika Anda tidak menandatangani manifes, Anda dapat menghilangkan
-cf
parameter yang digunakan dalam contoh ini. Jika Anda menandatangani manifes dengan sertifikat yang memerlukan kata sandi, tentukan-password
opsi (For example: mage -u MyWPFApp.exe.manifest -cf ..\..\..\MyWPFApp_TemporaryKey.pfx - password Password
).Pada prompt perintah, jalankan perintah berikut untuk menambahkan ekstensi .deploy ke nama file yang Anda ganti namanya di langkah sebelumnya dari prosedur ini.
ren MyWPFApp.exe MyWPFApp.exe.deploy
Catatan
Contoh ini mengasumsikan bahwa hanya satu file yang memiliki ekstensi file .deploy . Pastikan Anda mengganti nama semua file di direktori ini yang sebelumnya memiliki ekstensi nama file .deploy .
Pada prompt perintah, jalankan perintah berikut untuk menandatangani manifes penyebaran.
mage -u ..\..\MyWPFApp.application -appm MyWPFApp.exe.manifest -cf ..\..\..\MyWPFApp_TemporaryKey.pfx
Catatan
Contoh ini mengasumsikan bahwa Anda menandatangani manifes dengan menggunakan file .pfx proyek. Jika Anda tidak menandatangani manifes, Anda dapat menghilangkan
-cf
parameter yang digunakan dalam contoh ini. Jika Anda menandatangani manifes dengan sertifikat yang memerlukan kata sandi, tentukan-password
opsi , seperti dalam contoh ini:For example: mage -u MyWPFApp.exe.manifest -cf ..\..\..\MyWPFApp_TemporaryKey.pfx - password Password
.Setelah melakukan langkah-langkah ini, Anda dapat memindahkan file yang diterbitkan ke lokasi tempat Anda ingin pengguna akhir menginstal aplikasi. Jika Anda ingin sering memperbarui solusi, Anda dapat memindahkan perintah ini ke dalam skrip dan menjalankan skrip setiap kali Anda menerbitkan versi baru.
Konten terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk