资源文件生成器 (Resgen.exe) 工具可使您创建 .resources 文件以及用来访问这些 .resources 文件的强类型包装。创建强类型包装时,.resources 文件的名称必须与生成的代码的命名空间和类名(例如,MyNamespace.MyClass.resources)匹配。但是, 资源文件生成器 (Resgen.exe) 工具允许您指定生成名称不兼容的 .resources 文件的选项。若要避免此行为,请在 资源文件生成器 (Resgen.exe) 工具生成输出文件后,重命名名称不兼容的输出文件。
用 Resgen.exe 创建完 .resources 文件后,请使用 程序集链接器 (Al.exe) 将资源嵌入运行库二进制可执行文件或者将其编译为附属程序集。
注意
如果出于某种原因 Resgen.exe 失败,则返回值将为 –1。
注意
生成强类型资源类时,Resgen.exe 不接受包含空格的 .resx 文件名。它使用下划线(“_”)替换所有无效字符。有关更多信息,请参见 VerifyResourceName。
使用示例
当未指定选项时,下列命令显示 Resgen.exe 的命令语法和选项。
resgen
下面的命令读取 myResources.txt 中的名称/值对,并写一个名为 myResources.resources. 的二进制资源文件。因为未显式指定输出文件名,所以它将默认采用与输入文件相同的名称。
resgen myResources.txt
下面的命令读取 myResources.txt 中的名称/值对,并写一个名为 yourResources.resources 的二进制资源文件。
resgen myResources.txt yourResources.resources
下面的命令读取基于 XML 的输入文件 myResources.resx,并写一个名为 myResources.resources 的二进制资源文件。
resgen myResources.resx myResources.resources
下面的命令读取二进制资源文件 myResources.resources,并写一个名为 myResources.resx 的基于 XML 的输出文件。
resgen myResources.resources myResources.resx
下面的命令读取基于 XML 的输入文件 myResources.resx,并写一个名为 myResources.txt 的 .txt 文件。请注意,如果 .resx 文件包含任何嵌入对象,则这些嵌入对象不会准确地转换为 .txt 文件。
resgen myResources.resx myResources.txt
下面的命令读取基于 XML 的输入文件 myResources.resx,并写一个名为 myResources.resources 的二进制资源文件。它还生成一个名为 MyFile.vb 的 Visual Basic 文件,该文件中有一个名为 MyClass 的类,其中包含与输入文件中引用的资源相匹配的强类型属性。MyClass 类包含在名为 Namespace1 的命名空间中。
resgen myResources.resx myResources.resources /str:C#,Namespace1,MyClass,MyFile.cs