Resgen.exe (Kaynak Dosya Oluşturucu)

Kaynak Dosya Oluşturucu (Resgen.exe), metin (.txt veya .restext) dosyalarını ve XML tabanlı kaynak biçimi (.resx) dosyalarını çalışma zamanı ikili yürütülebilir dosyası veya uydu derlemesine ekleyebileceğiniz ortak dil çalışma zamanı ikili (.resources) dosyalarına dönüştürür. Daha fazla bilgi için bkz. Kaynak dosyaları oluşturma.

Resgen.exe, aşağıdaki görevleri gerçekleştiren genel amaçlı bir kaynak dönüştürme yardımcı programıdır:

  • .txt veya .restext dosyalarını .resources veya .resx dosyalarına dönüştürür. (.restext dosyalarının biçimi, .txt dosyalarının biçimiyle aynıdır. Ancak.restext uzantısı, kaynak tanımları içeren metin dosyalarını daha kolay tanımlamanıza yardımcı olur.)

  • .resources dosyalarını metne veya .resx dosyalarına dönüştürür.

  • .resx dosyalarını metne veya .resources dosyalarına dönüştürür.

  • Dize kaynaklarını bir derlemeden Windows 8.x Store uygulamasında kullanıma uygun bir .resw dosyasına ayıklar.

  • Tek tek adlandırılmış kaynaklara ve ResourceManager örneğe erişim sağlayan kesin olarak belirlenmiş bir sınıf oluşturur.

Resgen.exe herhangi bir nedenle başarısız olursa, dönüş değeri -1 olur.

Resgen.exeile ilgili yardım almak için, komut söz dizimini ve Resgen.exeseçeneklerini görüntülemek üzere, hiçbir seçenek belirtilmemiş olarak aşağıdaki komutu kullanabilirsiniz:

resgen

Anahtarı da kullanabilirsiniz /? :

resgen /?

İkili .resources dosyaları oluşturmak için Resgen.exe kullanırsanız, ikili dosyaları yürütülebilir derlemelere eklemek için bir dil derleyicisi kullanabilir veya derleme bağlayıcısını (Al.exe) kullanarak bunları uydu derlemelerine derleyebilirsiniz.

Bu araç Visual Studio ile otomatik olarak yüklenir. Aracı çalıştırmak için Visual Studio Geliştirici Komut İstemi'ni veya Visual Studio Geliştirici PowerShell'i kullanın.

Komut isteminde aşağıdakileri yazın:

Sözdizimi

resgen  [-define:symbol1[,symbol2,...]] [/useSourcePath] filename.extension  | /compile filename.extension... [outputFilename.extension] [/r:assembly] [/str:lang[,namespace[,class[,file]]] [/publicclass]]
resgen filename.extension [outputDirectory]

Parametreler

Parametre veya anahtar Description
/define: symbol1[, symbol2,...] .NET Framework 4.5'den başlayarak, metin tabanlı (.txt veya .restext) kaynak dosyalarında koşullu derlemeyi destekler. Simge, bir #ifdef yapı içindeki giriş metin dosyasında yer alan bir simgeye karşılık geliyorsa, ilişkili dize kaynağı .resources dosyasına eklenir. Giriş metin dosyasında #if ! anahtar tarafından /define tanımlanmayan bir simge içeren bir deyim varsa, ilişkili dize kaynağı kaynaklar dosyasına eklenir.

/define , metin olmayan dosyalarla kullanıldığında yoksayılır. Simgeler büyük/küçük harfe duyarlıdır.

Bu seçenek hakkında daha fazla bilgi için bu konunun devamında yer alan Kaynakları Koşullu Olarak Derleme bölümüne bakın.
useSourcePath Giriş dosyasının geçerli dizininin göreli dosya yollarını çözümlemek için kullanılacağını belirtir.
/compile Tek bir toplu işlemde birden çok .resources dosyalarına dönüştürmek için birden çok .resx veya metin dosyası belirtmenizi sağlar. Bu seçeneği belirtmezseniz, yalnızca bir giriş dosyası bağımsız değişkeni belirtebilirsiniz. Çıkış dosyaları filename.resources olarak adlandırılır.

Bu seçenek seçeneğiyle /str: kullanılamaz.

Bu seçenek hakkında daha fazla bilgi için, bu konunun devamında yer alan Birden Çok Dosyayı Derleme veya Dönüştürme konusuna bakın.
/r: assembly Belirtilen derlemeden meta verileri başvurur. .resx dosyaları dönüştürülürken kullanılır ve Resgen.exe nesne kaynaklarını seri hale getirmesine veya seri durumdan çıkarmasına izin verir. C# ve Visual Basic derleyicileri için veya /r: seçeneklerine benzer/reference:.
filename.extension Dönüştürülecek giriş dosyasının adını belirtir. Bu tablodan önce sunulan ilk, daha uzun komut satırı söz dizimini kullanıyorsanız, extension aşağıdakilerden biri olmalıdır:

.txt veya .restext
.resources veya .resx dosyasına dönüştürülecek metin dosyası. Metin dosyaları yalnızca dize kaynaklarını içerebilir. Dosya biçimi hakkında bilgi için Kaynak dosyaları oluşturma bölümünün "Metin Dosyalarındaki Kaynaklar" bölümüne bakın.

.resx
.resources veya metin (.txt veya .restext) dosyasına dönüştürülecek XML tabanlı kaynak dosyası.

.Kaynaklar
.resx veya metin (.txt veya .restext) dosyasına dönüştürülecek ikili kaynak dosyası.

Bu tablodan önce sunulan ikinci, daha kısa komut satırı söz dizimini kullanıyorsanız aşağıdakiler extension olmalıdır:

.exe veya .dll
Dize kaynakları Windows 8.x Store uygulamaları geliştirirken kullanılmak üzere bir .resw dosyasına ayıklanacak olan bir .NET Framework derlemesi (yürütülebilir dosya veya kitaplık).
outputFilename.extension Oluşturulacak kaynak dosyasının adını ve türünü belirtir.

Bu bağımsız değişken, bir .txt, .restext veya .resx dosyasından .resources dosyasına dönüştürülürken isteğe bağlıdır. belirtmezseniz outputFilename, Resgen.exe girişe filename bir .resources uzantısı ekler ve dosyayı içeren filename,extensiondizine yazar.

outputFilename.extension Bağımsız değişken bir .resources dosyasından dönüştürülürken zorunludur. .resources dosyasını XML tabanlı bir kaynak dosyasına dönüştürürken .resx uzantısıyla bir dosya adı belirtin. .resources dosyasını metin dosyasına dönüştürürken .txt veya .restext uzantısıyla bir dosya adı belirtin. Bir .resources dosyasını yalnızca .resources dosyasında yalnızca dize değerleri bulunduğunda .txt dosyasına dönüştürmeniz gerekir.
outputDirectory Windows 8.x Store uygulamaları için, içindeki dize kaynaklarını filename.extension içeren bir .resw dosyasının yazılacağı dizini belirtir. outputDirectory zaten mevcut olmalıdır.
/str: language[,namespace[,classname[,filename]]] seçeneğinde belirtilen language programlama dilinde kesin olarak belirlenmiş bir kaynak sınıfı dosyası oluşturur. language aşağıdaki değişmez değerlerden birini içerebilir:

- C#: c#, csveya csharpiçin.
- Visual Basic için: vb veya visualbasic.
- VBScript için: vbs veya vbscript.
- C++için: c++, mcveya cpp.
- JavaScript için: js, jscriptveya javascript.

namespace seçeneği projenin varsayılan ad alanını, classname seçeneği oluşturulan sınıfın adını ve filename seçenek de sınıf dosyasının adını belirtir.

seçeneği /str: yalnızca bir giriş dosyasına izin verir, bu nedenle seçeneğiyle /compile kullanılamaz.

Belirtilir ancak classname belirtilmezsenamespace, sınıf adı çıkış dosyası adından türetilir (örneğin, alt çizgiler nokta yerine kullanılır). Kesin olarak yazılan kaynaklar sonuç olarak düzgün çalışmayabilir. Bunu önlemek için hem sınıf adını hem de çıkış dosyası adını belirtin.

Bu seçenek hakkında daha fazla bilgi için, bu konunun devamında Yer alan Kesin Türü Belirlenmiş Bir Kaynak Sınıfı Oluşturma konusuna bakın.
/publicClass Genel sınıf olarak kesin olarak belirlenmiş bir kaynak sınıfı oluşturur. Varsayılan olarak, kaynak sınıfı C# ve Friend Visual Basic'tedirinternal.

Seçenek kullanılmazsa /str: bu seçenek yoksayılır.

Resgen.exe ve Kaynak Dosya Türleri

Resgen.exe kaynakları başarıyla dönüştürebilmesi için metin ve .resx dosyalarının doğru biçimi izlemesi gerekir.

Metin (.txt ve .restext) Dosyaları

Metin (.txt veya .restext) dosyaları yalnızca dize kaynaklarını içerebilir. Dize kaynakları, çeşitli dillere çevrilmiş dizeleri olması gereken bir uygulama yazıyorsanız kullanışlıdır. Örneğin, uygun dize kaynağını kullanarak menü dizelerini kolayca bölgeselleştirebilirsiniz. Resgen.exe ad/değer çiftleri içeren metin dosyalarını okur; burada ad kaynağı tanımlayan bir dizedir ve değer kaynak dizesinin kendisidir.

Uyarı

.txt ve .restext dosyalarının biçimi hakkında bilgi için Kaynak dosyaları oluşturma'nın "Metin Dosyalarındaki Kaynaklar" bölümüne bakın.

Kaynak içeren bir metin dosyası, yalnızca Temel Latin aralığındaki karakterleri (U+007F'ye) içermediği sürece UTF-8 veya Unicode (UTF-16) kodlamasıyla kaydedilmelidir. Resgen.exe, ANSI kodlaması kullanılarak kaydedilen bir metin dosyasını işlerken genişletilmiş ANSI karakterlerini kaldırır.

Resgen.exe yinelenen kaynak adları için metin dosyasını denetler. Metin dosyası yinelenen kaynak adları içeriyorsa, Resgen.exe bir uyarı gönderir ve ikinci değeri yoksayar.

.resx Dosyaları

.resx kaynak dosyası biçimi XML girdilerinden oluşur. Metin dosyalarında olduğu gibi, bu XML girdileri içinde dize kaynaklarını belirtebilirsiniz. .resx dosyalarının metin dosyalarına göre birincil avantajı, nesneleri de belirtebilmeniz veya katıştırabilmenizdir. Bir .resx dosyasını görüntülediğinizde, bu ikili bilgi kaynak bildiriminin bir parçası olduğunda eklenmiş bir nesnenin ikili biçimini (örneğin, bir resim) görebilirsiniz. Metin dosyalarında olduğu gibi, bir metin düzenleyicisi (Not Defteri veya Microsoft Word gibi) ile bir .resx dosyası açabilir ve içeriğini yazabilir, ayrıştırabilir ve işleyebilirsiniz. Bunun, XML etiketleri ve .resx dosya yapısı hakkında iyi bir bilgi gerektirdiğini unutmayın. .resx dosya biçimi hakkında daha fazla bilgi için Kaynak dosyaları oluşturma'nın ".resx Dosyalarındaki Kaynaklar" bölümüne bakın.

Katıştırılmış olmayan nesneler içeren bir .resources dosyası oluşturmak için, nesneleri içeren bir .resx dosyasını dönüştürmek için Resgen.exe kullanmanız veya sınıfı tarafından ResourceWriter sağlanan yöntemleri çağırarak nesne kaynaklarını doğrudan koddan dosyanıza eklemeniz gerekir.

.resx veya .resources dosyanız nesneler içeriyorsa ve bunu bir metin dosyasına dönüştürmek için Resgen.exe kullanırsanız, tüm dize kaynakları doğru şekilde dönüştürülür, ancak dize olmayan nesnelerin veri türleri de dosyaya dize olarak yazılır. Dönüştürmedeki katıştırılmış nesneleri kaybedersiniz ve Resgen.exe kaynakları alırken bir hata oluştuğunu bildirir.

Kaynaklar Arasında Dönüştürme Dosya Türleri

Farklı kaynak dosya türleri arasında dönüştürme yaptığınızda, Resgen.exe dönüştürmeyi gerçekleştiremeyebilir veya kaynak ve hedef dosya türlerine bağlı olarak belirli kaynaklar hakkındaki bilgileri kaybedebilir. Aşağıdaki tablo, bir kaynak dosya türünden diğerine dönüştürme sırasında başarılı olan dönüştürme türlerini belirtir.

Dönüştürme Metin dosyasına .resx dosyasına .resw dosyasına .resources dosyasına
Metin (.txt veya .restext) dosyası -- Sorun yok Desteklenmez Sorun yok
.resx dosyası Dosya dize dışı kaynaklar (dosya bağlantıları dahil) içeriyorsa dönüştürme başarısız oluyor -- Desteklenmiyor* Sorun yok
.resources dosyası Dosya dize dışı kaynaklar (dosya bağlantıları dahil) içeriyorsa dönüştürme başarısız oluyor Sorun yok Desteklenmez --
derlemeyi .exe veya .dll Desteklenmez Desteklenmez Yalnızca dize kaynakları (yol adları dahil) kaynak olarak kabul edilir Desteklenmez

*Windows 8.x Store uygulamalarında kaynak oluşturmak için .resw dosyalarını kullanırsınız. Dosya uzantısının farkı olmasına rağmen, .resw dosya biçimi .resx dosya biçimiyle aynıdır, ancak .resw dosyaları yalnızca dizeleri ve dosya yollarını içerebilir. Yalnızca dizeleri ve dosya yollarını içeren .resx dosyalarını yalnızca dosya uzantısını değiştirerek .resw dosyalarına dönüştürebilirsiniz.

Belirli Resgen.exe Görevlerini Gerçekleştirme

Resgen.exe çeşitli yollarla kullanabilirsiniz: metin tabanlı veya XML tabanlı bir kaynak dosyasını ikili dosyaya derlemek, kaynak dosya biçimleri arasında dönüştürme yapmak ve işlevselliği sarmalayan ResourceManager ve kaynaklara erişim sağlayan bir sınıf oluşturmak. Bu bölümde her görev hakkında ayrıntılı bilgi sağlanır:

Kaynakları İkili Dosyaya Derleme

Resgen.exe en yaygın kullanımı, metin tabanlı bir kaynak dosyasını (.txt veya .restext dosyası) veya XML tabanlı kaynak dosyasını (.resx dosyası) ikili bir .resources dosyasına derlemektir. Daha sonra çıkış dosyası, bir dil derleyicisi tarafından bir ana derlemeye veya Derleme Bağlayıcısı (AL.exe) tarafından bir uydu derlemesine eklenebilir.

Kaynak dosyasını derlemek için söz dizimi şöyledir:

resgen inputFilename [outputFilename]

burada parametreler şunlardır:

inputFilename Derlenecek kaynak dosyasının uzantısı da dahil olmak üzere dosya adı. Resgen.exe yalnızca .txt, .restext veya .resx uzantılı dosyaları derler.

outputFilename Çıkış dosyasının adı. atlarsanızoutputFilename, Resgen.exe ile aynı dizinde inputFilenamekök dosya adıyla inputFilename bir .resources dosyası oluşturur. Bir dizin yolu içeriyorsa outputFilename , dizinin mevcut olması gerekir.

.resources dosyası için dosya adında belirterek ve kök dosya adından noktayla ayırarak tam ad alanı sağlarsınız. Örneğin, ise outputFilenameMyCompany.Libraries.Strings.resourcesad alanı MyCompany.Libraries şeklindedir.

Aşağıdaki komut, Resources.txt içindeki ad/değer çiftlerini okur ve Resources.resources adlı bir ikili .resources dosyası yazar. Çıkış dosyası adı açıkça belirtilmediğinden, varsayılan olarak giriş dosyasıyla aynı adı alır.

resgen Resources.txt

Aşağıdaki komut Resources.restext dosyasındaki ad/değer çiftlerini okur ve StringResources.resources adlı bir ikili kaynak dosyası yazar.

resgen Resources.restext StringResources.resources

Aşağıdaki komut Resources.resx adlı XML tabanlı bir giriş dosyasını okur ve Resources.resources adlı bir ikili .resources dosyası yazar.

resgen Resources.resx Resources.resources

Kaynak Dosya Türleri Arasında Dönüştürme

Metin tabanlı veya XML tabanlı kaynak dosyalarını ikili .resources dosyalarına derlemeye ek olarak, Resgen.exe desteklenen herhangi bir dosya türünü desteklenen başka bir dosya türüne dönüştürebilir. Bu, aşağıdaki dönüştürmeleri gerçekleştirebileceği anlamına gelir:

  • .resx dosyalarına ve .restext dosyalarını .txt.

  • .resx dosyalarını .txt ve .restext dosyalarına.

  • .resources dosyalarını .txt ve .restext dosyalarına.

  • .resources dosyalarını .resx dosyalarına.

Söz dizimi, önceki bölümde gösterilenle aynıdır.

Ayrıca, .NET Framework derlemesindeki ekli kaynakları Windows 8.x Store uygulamaları için .resw dosyasına dönüştürmek için Resgen.exe kullanabilirsiniz.

Aşağıdaki komut Resources.resources ikili kaynak dosyasını okur ve Resources.resx adlı XML tabanlı bir çıkış dosyası yazar.

resgen Resources.resources Resources.resx

Aşağıdaki komut, StringResources.txt adlı metin tabanlı kaynaklar dosyasını okur ve LibraryResources.resx adlı XML tabanlı bir kaynak dosyası yazar. Dize kaynaklarını içermeye ek olarak, .resx dosyası dize olmayan kaynakları depolamak için de kullanılabilir.

resgen StringResources.txt LibraryResources.resx

Aşağıdaki iki komut Resources.resx adlı XML tabanlı kaynaklar dosyasını okur ve Resources.txt ve Resources.restext adlı metin dosyalarını yazar. .resx dosyasında eklenmiş nesneler varsa bunların metin dosyalarına doğru şekilde dönüştürülmeyeceklerini unutmayın.

resgen Resources.resx Resources.txt
resgen Resources.resx Resources.restext

Birden Çok Dosyayı Derleme veya Dönüştürme

Kaynak dosyalarının /compile listesini tek bir işlemde bir biçimden diğerine dönüştürmek için anahtarını kullanabilirsiniz. Sözdizimi şöyledir:

resgen /compile filename.extension [filename.extension...]

Aşağıdaki komut, StringResources.txt, TableResources.resw ve ImageResources.resw adlı üç dosyayı StringResources.resources, TableResources.resources ve ImageResources.resources adlı ayrı .resources dosyalarında derler.

resgen /compile StringResources.txt TableResources.resx ImageResources.resx

Kaynakları .resw Dosyasına Aktarma

Windows 8.x Store uygulaması geliştiriyorsanız, mevcut bir masaüstü uygulamasındaki kaynakları kullanmak isteyebilirsiniz. Ancak, iki tür uygulama farklı dosya biçimlerini destekler. Masaüstü uygulamalarında, metindeki (.txt veya .restext) veya .resx dosyalarındaki kaynaklar ikili .resources dosyalarında derlenir. Windows 8.x Store uygulamalarında .resw dosyaları ikili paket kaynak dizini (PRI) dosyaları halinde derlenir. Bir yürütülebilir dosyadan veya uydu derlemesinden kaynakları ayıklayıp bir Windows 8.x Store uygulaması geliştirirken kullanılabilecek bir veya daha fazla .resw dosyası yazarak bu boşluğu kapatmak için Resgen.exe kullanabilirsiniz.

Önemli

Visual Studio, taşınabilir bir kitaplıktaki kaynakları bir Windows 8.x Store uygulamasına dahil etme için gereken tüm dönüştürmeleri otomatik olarak işler. Bir derlemedeki kaynakları .resw dosya biçimine dönüştürmek için doğrudan Resgen.exe kullanmak yalnızca Visual Studio dışında bir Windows 8.x Store uygulaması geliştirmek isteyen geliştiriciler için önemlidir.

Bir derlemeden .resw dosyaları oluşturmak için söz dizimi şöyledir:

resgen filename.extension  [outputDirectory]

burada parametreler şunlardır:

filename.extension .NET Framework derlemesinin adı (yürütülebilir dosya veya .DLL). Dosyada kaynak yoksa Resgen.exe hiçbir dosya oluşturmaz.

outputDirectory .resw dosyalarının yazıldığı mevcut dizin. Atlanırsa outputDirectory , .resw dosyaları geçerli dizine yazılır. Resgen.exe, derlemedeki her .resources dosyası için bir .resw dosyası oluşturur. .resw dosyasının kök dosya adı, .resources dosyasının kök adıyla aynıdır.

Aşağıdaki komut, MyApp.exeeklenmiş her .resources dosyası için Win8Resources dizininde bir .resw dosyası oluşturur:

resgen MyApp.exe Win8Resources

Kaynakları Koşullu Olarak Derleme

.NET Framework 4.5'den başlayarak, Resgen.exe metin (.txt ve .restext) dosyalarındaki dize kaynaklarının koşullu derlemesini destekler. Bu, birden çok derleme yapılandırmasında tek bir metin tabanlı kaynak dosyası kullanmanıza olanak tanır.

.txt veya .restext dosyasında. #ifdef.. #endifbir simge tanımlanmışsa ikili .resources dosyasına bir kaynak eklemek için yapısı ve bir simge tanımlanmamışsa kaynak eklemek için ... #endif yapısını kullanırsınız#if !. Derleme zamanında, ardından seçeneğini ve ardından virgülle ayrılmış simge listesini kullanarak /define: sembolleri tanımlarsınız. Karşılaştırma büyük/küçük harfe duyarlıdır. tarafından /define tanımlanan simgelerin durumu, derlenecek metin dosyalarındaki simgelerin durumuyla eşleşmelidir.

Örneğin, UIResources.text adlı aşağıdaki dosya, , veya RETAIL adlı simgelerin tanımlanıp tanımlanmadığına bağlı olarak üç değerden birini alabilen adlı PRODUCTIONAppTitleCONSULTbir dize kaynağı içerir.

#ifdef PRODUCTION
AppTitle=My Software Company Project Manager
#endif
#ifdef CONSULT
AppTitle=My Consulting Company Project Manager
#endif
#ifdef RETAIL
AppTitle=My Retail Store Project Manager
#endif
FileMenuName=File

Dosya daha sonra aşağıdaki komutla ikili bir .resources dosyasında derlenebilir:

resgen /define:CONSULT UIResources.restext

Bu, iki dize kaynağı içeren bir .resources dosyası oluşturur. Kaynağın AppTitle değeri "Danışmanlık Şirketim Proje Yöneticisi"dir.

Kesin Türü Belirlenmiş Bir Kaynak Sınıfı Oluşturma

Resgen.exe, bir dizi statik salt okunur özellik içeren sınıflar oluşturarak kaynaklara erişimi kapsülleyen kesin olarak belirlenmiş kaynakları destekler. Bu, doğrudan kaynakları almak için sınıfının yöntemlerini çağırmak ResourceManager için bir alternatif sağlar. Resgen.exeiçindeki sınıfın işlevselliğini /strStronglyTypedResourceBuilder sarmalayan seçeneğini kullanarak kesin olarak belirlenmiş kaynak desteğini etkinleştirebilirsiniz. seçeneğini belirttiğinizde /str , Resgen.exe çıktısı, giriş parametresinde başvuruda bulunan kaynaklarla eşleşen kesin olarak belirlenmiş özellikler içeren bir sınıftır. Bu sınıf, işlenen dosyada kullanılabilen kaynaklara kesin olarak türlenmiş salt okunur erişim sağlar.

Kesin olarak belirlenmiş bir kaynak oluşturmak için söz dizimi şöyledir:

resgen inputFilename [outputFilename] /str:language[,namespace,[classname[,filename]]] [/publicClass]

Parametreler ve anahtarlar şunlardır:

inputFilename Kesin olarak türü belirlenmiş bir kaynak sınıfı oluşturulacak kaynak dosyasının uzantısı da dahil olmak üzere dosya adı. Dosya metin tabanlı, XML tabanlı veya ikili bir .resources dosyası olabilir; .txt, .restext, .resw veya .resources uzantısına sahip olabilir.

outputFilename Çıkış dosyasının adı. Bir dizin yolu içeriyorsa outputFilename , dizinin mevcut olması gerekir. atlarsanızoutputFilename, Resgen.exe ile aynı dizinde inputFilenamekök dosya adıyla inputFilename bir .resources dosyası oluşturur.

outputFilename metin tabanlı, XML tabanlı veya ikili bir .resources dosyası olabilir. dosyasının uzantısı outputFilename , dosyasının uzantısından inputFilenamefarklıysa Resgen.exe dosya dönüştürme işlemini gerçekleştirir.

Bir .resources dosyasıysa inputFilename , Resgen.exe .resources dosyasını da bir .resources dosyasıysa outputFilename kopyalar. Atlanırsa outputFilename , Resgen.exe aynı .resources dosyasıyla üzerine yazar inputFilename .

Dil Kesin olarak türü belirlenmiş kaynak sınıfı için kaynak kodu oluşturulacak dil. Olası değerlercs, C# kodu için , C#ve csharp C# kodu için, vbvisualbasic Visual Basic kodu için ve vbscriptvbs VBScript kodu için ve c++, mcve cpp C++ kodu için geçerlidir.

Namespace Kesin olarak yazılan kaynak sınıfını içeren ad alanı. .resources dosyası ve kaynak sınıfı aynı ad alanına sahip olmalıdır. içinde outputFilenamead alanını belirtme hakkında bilgi için bkz. Kaynakları İkili Dosyaya Derleme. Ad alanı atlanırsa, kaynak sınıfı bir ad alanında yer almaz.

classname Kesin olarak yazılan kaynak sınıfının adı. Bu, .resources dosyasının kök adına karşılık gelir. Örneğin, Resgen.exe MyCompany.Libraries.Strings.resources adlı bir .resources dosyası oluşturursa, kesin olarak yazılan kaynak sınıfının adı Dizeler'dir. classname atlanırsa, oluşturulan sınıf kök adından outputFilenametüretilir. Atlanırsa outputFilename , oluşturulan sınıf kök adından inputFilenametüretilir.

classname , eklenmiş boşluklar gibi geçersiz karakterler içeremez. Classname eklenmiş boşluklar içeriyorsa veya classname varsayılan olarak inputFilename öğesinden oluşturulduysa ve inputFilename eklenmiş boşluklar içeriyorsa, Resgen.exe tüm geçersiz karakterleri alt çizgi (_) ile değiştirir.

Dosyaadı Sınıf dosyasının adı.

/publicclassKesin olarak yazılan kaynak sınıfını (C#'de) veya Friend (Visual Basic'te) yerine internal genel yapar. Bu, kaynaklara katıştırıldıkları derlemenin dışından erişilmesine olanak tanır.

Önemli

Kesin olarak belirlenmiş bir kaynak sınıfı oluşturduğunuzda, .resources dosyanızın adı, oluşturulan kodun ad alanı ve sınıf adıyla eşleşmelidir. Ancak Resgen.exe, uyumsuz ada sahip bir .resources dosyası oluşturan seçenekleri belirtmenize olanak tanır. Bu davranışa geçici bir çözüm bulmak için çıktı dosyasını oluşturulduktan sonra yeniden adlandırın.

Kesin olarak türü belirlenmiş kaynak sınıfı aşağıdaki üyelere sahiptir:

  • Kesin olarak türü belirlenmiş kaynak sınıfının örneğini oluşturmak için kullanılabilecek parametresiz bir oluşturucu.

  • static Kesin türü belirlenmiş kaynağı yöneten örneği döndüren ResourceManager bir (C#) veya Shared (Visual Basic) ve salt ResourceManager okunur özellik.

  • Kaynak alma için kullanılan kültürü ayarlamanıza olanak tanıyan statik Culture bir özellik. Varsayılan olarak değeri değeridir nullve geçerli ui kültürünün kullanıldığı anlamına gelir.

  • .resources dosyasındaki her kaynak için bir static (C#) veya Shared (Visual Basic) ve salt okunur özellik. Özelliğin adı kaynağın adıdır.-

Örneğin, aşağıdaki komut StringResources.txt adlı bir kaynak dosyasını StringResources.resources içine derler ve Resource Manager'a erişmek için kullanılabilecek StringResources.vb adlı Visual Basic kaynak kodu dosyasında adlı bir sınıf StringResources oluşturur.

resgen StringResources.txt /str:vb,,StringResources

Ayrıca bakınız