标签: resgen

以编程方式为resx文件生成Designer.cs(ResXResourceWriter/ResXResourceReader)

我正在使用ResXResourceWriter/ResXResourceReader在TFS中创建/更新resx文件,它不会生成.Designer.cs文件.我看到Resgen创建了.Designer.cs.如何以编程方式调用以在某个TFS文件路径生成.Designer.cs?这是这样的吗?

ProcessStartInfo startInfo = new ProcessStartInfo(@"C:\Program Files\Microsoft.NET\SDK\v2.0 64bit\Bin\ResGen.exe");
                startInfo.WindowStyle = ProcessWindowStyle.Minimized;
                startInfo.Arguments = "ResourceName.resx /publicClass /str:cs, Namespace, ResourceName, ResourceName.Designer.cs";
                Process.Start(startInfo);
Run Code Online (Sandbox Code Playgroud)

c# resx resgen

12
推荐指数
1
解决办法
6560
查看次数

我在哪里可以获得与NANT一起使用的resgen.exe?

我只是试图用resgen运行NANT,但我似乎无法找到我需要下载的内容,以便在' C:\ Program Files\Microsoft Visual Studio 8\SDK\v2.0\bin\resgen中提供它. exe '在我的服务器上.

谢谢.

.net nant resgen windows-server-2003

11
推荐指数
2
解决办法
1万
查看次数

在自定义服务器控件asp中使用.resx && .resource文件

我编写自己的服务器端控件并使用在.resx文件中存储的图像.在控制台应用程序中,此代码工作正常:

     ResXResourceReader rsxr = new ResXResourceReader("Resource1.resx");

     foreach (DictionaryEntry d in rsxr)
     {
        Console.WriteLine(d.Key.ToString() + ":\t" + d.Value.ToString());
     }

     rsxr.Close();
Run Code Online (Sandbox Code Playgroud)

但在这里

      protected override void RenderContents(HtmlTextWriter output)
    {
        ResXResourceReader rsxr = new ResXResourceReader("Resource1.resx");

        base.RenderContents(output);

        foreach (DictionaryEntry d in rsxr)
        {
            output.Write(d.Key.ToString());
        }

    }
Run Code Online (Sandbox Code Playgroud)

我感到很恐怖:

找不到文件'C:\ Program Files\Common Files\Microsoft Shared\DevServer\10.0\Resource1.resx'

我尝试使用ResourceManager但它需要.resource文件.我无法访问resgen工具(命令promt不理解[resgen]命令)并安装它(发生错误).

第一:为什么我不能读.resx?

第二:如何安装resgen工具?

谢谢.

c# asp.net resx resgen

5
推荐指数
1
解决办法
2117
查看次数

编译项目中的resx文件或只使用resgen而不编译resx

我在我的项目中使用2个resx文件,一个用于en-Us,另一个用于de-DE(本地化).

我使用resgen将这些resx文件编译为资源文件.

有谁可以帮我解决以下两个问题:

  1. 如果我需要在项目中添加更多resx文件,比如fr-FR,我是否需要在项目中为fr-Fr添加新的resx文件后再次编译项目,或者我可以创建resx文件并生成.使用resgen工具从resx获取资源文件而不编译Visula工作室项目?

  2. 使用resgen从resx生成的.resource文件是否可以嵌入到exe中,还是作为独立的编译二进制文件与使用资源文件的exe一起保留?

c# localization resx compilation resgen

5
推荐指数
1
解决办法
2503
查看次数

在单个附属程序集中组合LocBaml和Resources

我的理解是推荐的WPF本地化方法是使用LocBaml工具将可本地化的项目提取到例如csv文件中,将项目翻译成所需的语言并从该csv文件重新生成新的sattelite程序集.然而,根据我的实验,这似乎与从resources.resx文件生成附属程序集相冲突,因为它们既没有将资源组合到单个资源文件中,而是简单地覆盖任何现有的附属程序集.

是否有一种推荐的方法(甚至更好,一种现有的工具)用于对来自LocBaml/generate的输出进行"合并"以及在resources.resx文件上运行resgen的输出(默认情况下由VS在构建时完成).有人在那里解决同样的问题吗?

wpf resources localization resgen

5
推荐指数
1
解决办法
2742
查看次数

错误RG0000:无法加载文件或程序集"xxx"或其依赖项之一.访问被拒绝

这是针对VS2010下的Windows窗体项目.

这是我从MSBuild得到的消息:

错误RG0000:无法加载文件或程序集"3rdPartyAssemblyUsedByProject,Version = 1.1.263.0,Culture = neutral,PublicKeyToken = 687bce93d7ce902c"或其依赖项之一.访问被拒绝.第174行,第5行.[C:\ xxx\src\BackOffice.csproj]

这是用于启动它的命令行:

c:/WINDOWS/Microsoft.NET/Framework/v4.0.30319/msbuild.exe BackOffice.csproj /p:PlatformTarget=x86
Run Code Online (Sandbox Code Playgroud)

resx文件的第174行归因于错误:

<data name="generalImages.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
    <value>
        ...
    </value>
  </data>
Run Code Online (Sandbox Code Playgroud)

generalImages是一个ImageList控件,其中包含用于表单上按钮的图像.

这在我的开发机器上工作正常,但在我的构建服务器上是一个问题.我的工作站是Windows 7 64位,构建服务器是Windows 2008 Server 64位.构建服务器确实安装了Windows 7.1 sdk.

如果我使用v3.5框架中的msbuild,则编译成功完成.我确实得到了这个警告消息,这个消息在这一点上没有引起任何问题:项目文件包含ToolsVersion ="4.0",这个版本的MSBuild不支持.像处理ToolsVersion ="3.5"那样处理项目.

这样做的全部原因是实际上以4.0框架为目标并使用方法默认值,这在定位3.5时不起作用.

我在这个搜索和搜索过.我遇到了很多与32位/ 64位问题有关的点击 - 图像格式是问题所在,但这不是我的问题.此错误表示"访问被拒绝".我确实使用fuslogvw来试图找出拒绝访问的来源 - 但我没有看到它,但它实际上并没有找到任何程序集.程序集不在GAC中,而是在项目文件引用所在的项目文件的切向目录中.

这是融合日志:

*装配活页夹日志条目(2010年8月30日下午1:44:48)*

操作失败.绑定结果:hr = 0x80070002.该系统找不到指定的文件.

程序集管理器从以下位置加载:C:\ Windows\Microsoft.NET\Framework64\v2.0.50727\mscorwks.dll在可执行文件C:\ Program Files\Microsoft SDKs\Windows\v7.1\Bin\ResGen.exe --- A下运行详细的错误日志如下.

===预绑定状态信息=== LOG:User = domain\user LOG:DisplayName = 3rdPartyAssemblyUsedByProject,Version = 1.1.263.0,Culture = neutral,PublicKeyToken = 687bce93d7ce902c(完全指定)LOG:Appbase = file:///C:/ Program Files/Microsoft SDKs/Windows/v7.1/Bin/LOG:Initial PrivatePath = NULL LOG:Dynamic Base = NULL LOG:Cache Base …

msbuild resgen

5
推荐指数
1
解决办法
8860
查看次数

将资源文件转换为resx - 不可序列化

我有一个任务,我正在重建我们为许多项目丢失的一些来源.最多,它已经很好了,但当然在最后一个项目中,我遇到了一个错误,我无法找到任何解决方案.

我使用Reflector 8.1反编译DLL,它给了我所有源代码和一堆.resources文件.我一直在使用resgen程序将它们转换回.resx文件以包含在项目中.一个档案让我感到悲伤.请帮忙.

>resgen foo.resources foo.resx
Read in 106 resources from "foo.resources"
ResGen : error RG0000: Error while writing the output file "Resources.resx"
ResGen : error RG0000: Specific exception: "InvalidOperationException"  Message: "Item        named 'IncomingRing' of type 'System.IO.PinnedBufferMemoryStream' cannot
be added to the resource file because it is not serializable."
Run Code Online (Sandbox Code Playgroud)

2个错误.

c# reflector resx invalidoperationexception resgen

2
推荐指数
1
解决办法
3502
查看次数