标签: resource-files

CMake和Visual Studio资源文件

我正在将使用Visual Studio 2005创建的C++项目转换为CMake,并且偶然发现了项目中包含的资源文件的一些问题.

该项目包括一个.rc文件,一堆.ico文件和一个.rc2文件.

常规.rc文件在生成的项目中正常工作并使用资源编译器.在.ico.rc2文件时,刚刚被列入他们,因为在生成的项目Visual Studio中尝试使用C/C++编译器编译不过它们是造成问题.

我假设这些文件包含在.rc文件中,因此它可能只是不将它们包含在CMakeLists.txt文件中,但是因为显然可以在项目中列出它们(它们在原始项目中可见)我我希望这样做,以便生成的项目的用户可以看到正在使用这些文件.

在CMake中处理这些额外VS资源文件的正确方法是什么?

c++ visual-studio-2005 cmake resource-files visual-studio

8
推荐指数
1
解决办法
8023
查看次数

如何在资源文件中使用字符串插值?

我想使用资源文件发送电子邮件.在我的资源文件中,我使用了一个变量"EmailConfirmation",其值为"Hello {userName} ..."

在我的班上我用过:

public static string message (string userName)
{
   return Resource.WebResource.EmailConfirmation
}
Run Code Online (Sandbox Code Playgroud)

问题是返回表示"Hello {userName}"而不是"Hello Toto".

c# variables interpolation resource-files string-formatting

8
推荐指数
1
解决办法
2265
查看次数

如何在javascript中使用.net资源文件

无论如何,我可以在JavaScript中访问我的资源文件(.resx)?
如果没有,那么在javascript中用不同的语言显示消息是否有任何变通方法?

javascript c# resource-files

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

如何在C#中读取已编译的资源(.res)文件?

我有一个编译的资源文件(.res).我需要在C#中阅读它,以便我可以以编程方式修改它.请注意,这不是 .resx文件或.rc文件; 文件是编译的,而不是基于文本的.

到目前为止,我尝试在Win32 API中查看LoadLibrary,LoadResource等,但似乎这些函数仅适用于可执行文件(.exe,.dll),而不是资源文件.

我尝试用BinaryReader加载文件,但当然我对结果字节数组没有多大意义.我想过尝试使用Marshal.PtrToStructure,但我还不知道res文件的结构是什么.我有RESOURCEHEADER的结构,但我无法理解如何使用它(我承认我的本机代码经验很少).

有人可以帮我弄清楚如何成功阅读和更新.res文件中的版本信息吗?

c# resource-files

7
推荐指数
1
解决办法
3303
查看次数

.NET Core中ResxResourceWriter的替代方法

我需要在基于.NET Core的应用程序中创建Resources(resx文件)。到目前为止,我以前一直使用System.Windows.Forms中的ResxResourceWriter。有什么建议如何在.NET Core中处理此任务?

除了我们现有的软件(基于某些二进制文件具有自己的本地化方法)外,新软件还应受益于现有的昂贵翻译,甚至在将术语添加到二进制文件时,它们也可以实现某些术语的翻译同步。

当然,您可以使用XmlSerialization。问题是,是否存在在.NET Core中创建/管理Resx文件的正式方法。

resx resource-files .net-core

7
推荐指数
1
解决办法
764
查看次数

Java Resource InputStream正在关闭?

我正在将Java代码库从Java 7(80)迁移到Java 8(162).(是的......我们处于技术前沿.)

在切换之后,我在一个高度并发的环境中从部署的jar加载XML资源文件时遇到了问题.正在使用try-with-resourcesSAX 访问和解析资源文件:

try {
  SAXParser parser = SAXParserFactory.newInstance().newSAXParser();
  try (InputStream in = MyClass.class.getResourceAsStream("resource.xml")) {
    parser.parse(in, new DefaultHandler() {...});
  }
} catch (Exception ex) {
  throw new RuntimeException("Error loading resource.xml", ex);
} 
Run Code Online (Sandbox Code Playgroud)

如果我错了,请纠正我,但这似乎是通常建议阅读资源文件的方法.

这在IDE中运行良好,但是一旦它被部署在jar中,我经常(但不是普遍的,并且不总是使用相同的资源文件)得到一个IOException,具有以下堆栈跟踪:

Caused by: java.io.IOException: Stream closed 
    at java.util.zip.InflaterInputStream.ensureOpen(InflaterInputStream.java:67)
    at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:142)
    at java.io.FilterInputStream.read(FilterInputStream.java:133)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityManager$RewindableInputStream.read(XMLEntityManager.java:2919)
    at com.sun.org.apache.xerces.internal.impl.io.UTF8Reader.read(UTF8Reader.java:302)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(XMLEntityScanner.java:1895)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.scanName(XMLEntityScanner.java:728)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1279)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2784)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:602)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:505)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:842)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:771)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:643)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:327)
    at …
Run Code Online (Sandbox Code Playgroud)

java jar resource-files ioexception java-8

7
推荐指数
1
解决办法
639
查看次数

Delphi 版本号集中但其他信息分散

背景

在 RS10.3 之前,我曾经使用 Andreas Hausladen DDevExtensions将我的项目源中的版本号设置为所有模块(bpl's/exe)都相同,但不幸的是,Andreas 已停止为 RS10.4 及更高版本更新他的工具。

因此,与使用 NotePad++ 对所有 dproj 文件应用多文件更改相比,我正在寻找更舒适的方法来在我的应用程序模块中设置版本号。

但是...另一方面,我确实希望保留特定于模块文件的特定信息(如文件描述等)。

我还要什么喜欢但是,这不是一个真正的要求是有我的(C)的通知,和其他共享信息,以在一个文件中(最好是.RC)也可集中进行。

从 dproj 文件中删除版本信息(无论如何维护起来都很痛苦)并为每个模块提供一个特定的 .rc 文件不是问题。

另一个优点是拥有一个中央版本号和 (c) 文件在 svn 更改管理中也好得多,因为我不必因为版本/内部版本号更改而提交每个 .dproj 文件。

调查

(随着我们的进行更新)我签出

但这些解决方案并不是我真正想要的。我不是在寻找脚本,而是寻找源文件/项目文件的方式来完成我的任务。

所以这是Q

我如何拥有一个包含我的版本号的.rc 文件并在其他包含特定版本信息的 .rc 文件中使用它

delphi resource-files fileversioninfo rad-studio

7
推荐指数
1
解决办法
249
查看次数

asp.net:资源.resx文件中的换行符\n不起作用

"\n"在下面的代码中不起作用,它只显示为"\n"

if (!window.confirm(XXXXX.Globalization.LocalResource.InvalidUrl)) {
    return false;
}
Run Code Online (Sandbox Code Playgroud)

字符串是"无效的网址!\n您确定要继续吗?" 在资源resx文件中.

如何使它工作?

javascript asp.net resx line-breaks resource-files

6
推荐指数
2
解决办法
8651
查看次数

由于RC文件的UTF-8编码,在C++项目中出现RC2135错误

从Visual Studio 2010切换到2012后,我得到了10个RC2135错误,在我的一个C++项目中看起来很奇怪.

Error   1   error RC2135: file not found: 0x06        NamedPipesNative.rc   19  1   NamedPipesNative
Error   2   error RC2135: file not found: 1           NamedPipesNative.rc   28  1   NamedPipesNative
Error   3   error RC2135: file not found: 5           NamedPipesNative.rc   29  1   NamedPipesNative
Error   4   error RC2135: file not found: 5           NamedPipesNative.rc   30  1   NamedPipesNative
Error   5   error RC2135: file not found: 0x17L       NamedPipesNative.rc   31  1   NamedPipesNative
Error   6   error RC2135: file not found: FILEOS      NamedPipesNative.rc   37  1   NamedPipesNative
Error   7   error RC2135: file …
Run Code Online (Sandbox Code Playgroud)

c++ resource-files rc

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

如何解决“无效的 Resx 文件...找不到 ResX 读取器和写入器类型名称的有效“resheader”标签。” 编译器错误?

我收到十几个“无效的 Resx 文件。ResX 输入无效。无法找到 ResX 读取器和写入器类型名称的有效“resheader”标签。” 尝试编译时出现错误消息。

我以前遇到过这个问题,如下所示

但这一次,它的表现略有不同。

首先,这是我所做的:我在项目中的几个文件上选择了上下文菜单项“撤消挂起的更改”。对于他们每个人来说,其相关的 *.resx 文件显然已损坏。

2 单击错误列表中的第一个 err 消息会将我带到 .resx 文件中:

  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
Run Code Online (Sandbox Code Playgroud)

2-单击下一个错误将我带到 .resx 文件中的此处:

<resheader name="resmimetype">text/microsoft-resx</resheader>
Run Code Online (Sandbox Code Playgroud)

这是注释掉的解释部分;在一些上下文中:

<!-- 
    Microsoft ResX Schema 

    Version 1.3

    The primary goals of this format is to allow a simple XML format 
    that is mostly human readable. The generation and parsing of the 
    various data types are done through the TypeConverter classes 
    associated with the data types.

    Example:

    ... ado.net/XML headers & schema …
Run Code Online (Sandbox Code Playgroud)

whitespace resx resource-files visual-studio-2008 winforms

6
推荐指数
0
解决办法
5113
查看次数