2009-05-08 9 views
41

VS'yi Unicode'u her zaman tuhaf ISO-şeyleri yerine kullanmaya zorlamanın bir yolu var mı?csharp projesinde (görsel stüdyo/msbuild makinesi) kaynak dosya kodlamasını nasıl değiştirebilirim?

Visual Studio 2008 üzerinde Vista (Lehçe yerel ayarı) kullanarak bir winapp csproject üzerinde çalışıyorum. Proje, Win Server 2003'te (ingilizce yerel) proje oluşturduğumda görünür - o zaman Lehçe aksan gitmiş olur.

Sorunun hatalı kaynak dosya kodlamasından kaynaklandığını araştırdım. Kaynak dosyaların UTF-8 kodlamasını kullanmadığı görülüyor.

cevap

91

Sorun: Komut satırından başlatılan derleyici, eklediğim uluslararası karakterler nedeniyle kaynak dosyayı işleyemiyor.

Çözüm: Uluslararası karakterleri korumak için kaynak dosyayı UTF-8 kodlamasına açıkça kaydedin.

* open the problematic file in Visual Studio. 
* on the File menu click “Advanced Save Options“ 
* from “Encoding” combo select “Unicode (UTF-8 …“ 
* click OK. 

Sen hazırsınız: Nasıl Yapılır

. Oluşturmak sunucu ve yeşil için bekleyen ekibin geri kalanı lütfen.

+3

Birkaç dakika önce anladım. 'UTF-with-BOM' kullanarak test için bir dosya kaydettim ve bir çift geçersiz dizge düzeltildi. Visual Studio'nun tüm kaynaklar için UTF kullanması için herhangi bir ayar var mı? Birkaç yüz dosya için manuel olarak değiştirmek gerçekten aptalca. – tomo

+0

Bununla ilgili bir çalışma var - örneğin, örneğin, İngilizce bölgesel ayarları ayarlayarak farklı bir kodlama kullanmak için görsel stüdyon alabilirsiniz. Bu, VS'yi 'Unicode UTF-8 - Codepage 65001' yerine 'Batı Avrupa - Codepade 1252' kullanmaya zorlar. Yine, bu Express sürümünde çalışır ve tam uygulamada olacağından oldukça eminim. – ruslander

+4

Bu geçici çözüm beni tatmin etmiyor. Bilgisayarın bölgesel ayarını amaca uygun şekilde ayarlıyorum, bu yüzden değiştirmek bir seçenek değil. Ve CP 1252'ye geçmek de bir seçenek değil. Ben açıkça CP65001 ayarlamak istiyorum. Araştırma için biraz zaman harcadım ve VS 2008 şablonlarının gayet iyi olduğunu görüyorum - hepsi BOM ile birlikte UTF-8. Bütün kötülüklerin kaynağı, harici bileşenler üreticilerinden özensiz kodlayıcılardan gelen şablonlardır. Ayrıca ASP.NET MVC'nin son sürümü bu sorunu var. – tomo

1

VS2015 vb.net projesiyle aynı sorunları yaşadım ve vbproj/csproj dosyasına <CodePage>1250</CodePage> işaretçisi ekleyerek çözdüm. <SchemaVersion> işaretçisinden sonra yaptım, projeyi yeniden oluşturdum ve benim için çalıştı. gibi lehçe harflerle sorun yaşadım UTF-8 - 65001'i de deneyebilirsiniz, ancak çalışıp çalışmadığını kontrol etmedim.

İlgili konular