问题标签 [string-table]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
457 浏览

vb.net - 字符串表的确切资源类型名称

字符串表资源类型(如 BITMAP 等)的确切名称是什么?我正在使用 Visual Basic。

我已经搜索过,但找不到任何关于它的信息。

0 投票
1 回答
576 浏览

winapi - 修改win32本机exe中字符串表类型的资源

我想修改我的exe资源中的一些字符串。该资源类型是字符串表,但是当我使用UpdateResource函数时,我不知道必须将什么参数传递给它,因此它指向字符串表中的确切原始数据。

类型参数是RT_STRING,但我应该发送MAKEINTRESOURCEW()什么?

0 投票
0 回答
792 浏览

c - 通过 UpdateResource 更新 STRING TABLE(添加多个字符串)

可能重复:
使用 UpdateResource 更新字符串表

我正在尝试通过 UpdateResources 更新二进制字符串表,目前,我的代码只添加一个字符串,但我希望它在字符串表中添加多个条目。

这是我的代码:

我试图编辑`

到`

试图模仿换行符无济于事。

我错过了什么吗?我彻底查看了http://msdn.microsoft.com/en-us/library/windows/desktop/aa381050(v=vs.85).aspx,看起来我没有错过任何关键点,并且没有功能失败。

0 投票
4 回答
14976 浏览

c++ - 静态字符串文字表?

C++ 中创建全局和静态字符串表的正确方法是什么?

通过“全局”,我的意思是:可从包含标题的任何文件中使用。但不是某些运行时创建的单点对象的一部分。

我所说的“静态”是指:尽可能少地设置运行时间。只读存储器页中的数据。每个应用程序只有 1 个数据实例。

通过“字符串”,我的意思是:空终止的字符数组很好。std::string 会很好,但我认为不能按照上述方式完成。正确的?

通过“表”,我的意思是:我的意思是一个可索引的数组。所以我想这不是一张桌子本身。但我在这一点上很灵活。开放的想法。

通过“C++”,我的意思是:C++ 不是 C。(更新:C++98,不是 C++11)

0 投票
1 回答
201 浏览

visual-studio-2010 - 帮助将硬编码字符串移动到 MFC .rc 文件中的宏或加载项

我正在对一个旧的 MFC 项目进行国际化,并且我有成千上万的硬编码字符串要移动到字符串表中。我正在寻找宏、加载项或有关创建宏、加载项或向导的一些信息,以使我能够半自动化该过程。我希望能够突出显示一个字符串,右键单击并选择“移动到资源”之类的内容,并将该字符串添加到项目的字符串表中。可定制的东西会很棒,这样我就可以编辑创建的标识符并让工具用查找函数(我提供名称)替换代码中的硬编码字符串。我搜索了几天,找不到类似的东西。有谁知道已经存在的工具,或者可以提供一些关于我可以用来编写哪些 VS 可扩展性类的信息?我正在使用VS2010。

谢谢。

0 投票
1 回答
617 浏览

linux - 在 ELF 文件中搜索 .init 部分

我怎样才能找到部分.init?节标题有字段Elf32_Word sh_name。所以我想我必须遍历所有部分才能找到一个名称.initsh_name不是字符数组的部分。它是字符串表中的条目索引。字符串表在哪里?ELF 标头中有字段elfHdr.e_shstrndx。它是字符串表所在的部分的索引。所以要计算字符串表的偏移量,我使用下面描述的公式。

但结果偏移量不是字符串表的正确偏移量。我已经在各种文件上尝试过。可能有另一种方法来确定 section 是否.init存在?

0 投票
2 回答
1908 浏览

c++ - LoadString() 方法在 C++ 中不起作用

我正在尝试从我正在处理的 DLL 文件中的 Strin 表中加载一个字符串。这是应该将字符串加载到 a 中的函数std::wstring(因为我的项目使用 Unicode 字符集)。

我已经创建了最后三行来诊断该方法。的输出AfxMessageBox()0

我哪里错了?

0 投票
1 回答
57 浏览

java - 拆分结果在android上不可用

我有一个要拆分的字符串,它可以正常工作,直到我想使用它:当我使用“for”来读取字符串表中的内容时,我会准确显示我想要的内容,但是当我使用 if(MyStringTable[1 ] == "a") 这不是真的,即使我刚刚看到 MyStringTable[1] 等于 "a"。我的字符串表是“静态”声明的。我想知道是否有一个不可见的角色或通过拆分创建的东西。

0 投票
1 回答
233 浏览

c - C 中的 realloc 字符串表在第 4 次迭代时崩溃

尽管这里有几个关于这个问题的答案:我仍然无法将它们与以下代码相匹配,因为它segfault4th iterationprocessFile 上:

任何帮助将不胜感激!

阅读添加代码示例和 valgrind 输出的注释后:

下一行读取(行长为 32):libqosadaptor libqosadaptor.%::

请求的重新分配字节:8 outputBuffer=0x4C4F360 ==8347== 大小为 1 的无效写入 ==8347== 在 0x4A095CC:strncpy(在 /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so 中)==8347== by 0x400DFC: processFile (makefileUpgrade.c:83) ==8347== by 0x400F76: main (makefileUpgrade.c:113) ==8347== 地址 0x4c4f3d1 在大小为 33 alloc'd 的块之后是 0 字节 ==8347==在 0x4A0645D:malloc(在 /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so 中)==8347== by 0x400DC4:processFile(makefileUpgrade.c:82)==8347== by 0x400F76:main(makefileUpgrade.c :113)

--------------------------------------------- 下一行读取(行长度为 87): $(SHOW) $(MAKE) $(MAKEOPTS) REL_DIR=adaptor/qos -C $(ROOT)/adaptor/qos $* -f makefile

valgrind: m_mallocfree.c:277 (mk_plain_bszB): 断言 'bszB != 0' 失败。valgrind:这可能是由于您的程序错误地写入了堆块的末尾并损坏了堆元数据。如果您修复了 Memcheck 报告的任何无效写入,则此断言失败可能会消失。请在将其报告为错误之前尝试一下。

==8347== 在 0x3805028C: ??? (在 /usr/lib64/valgrind/memcheck-amd64-linux 中)==8347== 由 0x380503E6: ??? (在 /usr/lib64/valgrind/memcheck-amd64-linux 中)==8347== 由 0x3805AA4A: ??? (在 /usr/lib64/valgrind/memcheck-amd64-linux 中)==8347== 由 0x3805C9B7: ??? (在 /usr/lib64/valgrind/memcheck-amd64-linux 中)==8347== by 0x38021865: ??? (在 /usr/lib64/valgrind/memcheck-amd64-linux 中)==8347== 由 0x3809C5C2: ??? (在 /usr/lib64/valgrind/memcheck-amd64-linux 中)==8347== by 0x380AB21C: ??? (在 /usr/lib64/valgrind/memcheck-amd64-linux 中)

调度状态:running_tid=1

线程 1:status = VgTs_Runnable ==8347== at 0x4A083AA: realloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==8347== by 0x400D54: processFile (makefileUpgrade.c:80) == 8347== by 0x400F76: main (makefileUpgrade.c:113)

0 投票
0 回答
569 浏览

delphi - Delphi 2010:.rc 文件中定义的一些资源字符串在生成的 .exe 中丢失

.RC ​​文件中的某些资源在生成的 .exe 中不可用,其 ID 在 .RC 文件中给出。我有一个 RC 文件,其中包含 id 为 10000、10100 等的资源字符串。由于某种原因,当我加载 id 为 10000 (LoadStr(10000)) 的资源时,它会加载另一个字符串('无效字段类型。'-在 midas.rc 中声明来自 VCL 并且具有相同的 id)。

我假设具有相同 id 的资源在构建过程中会导致“[Error] WARNING. Duplicate resource(s)”。但是没有与链接器相关的警告。

ps我使用的是Delphi 2010。

更新:

  • 该问题的解决方法是将 id 从 10000 更改为其他值。10050,例如

问题:

  • 为什么重复资源没有警告?
  • 可以做些什么来防止将来出现这个问题?

我的项目.inc

我的项目.RC 文件

rc 文件被编译为 myproject.res 文件。并且生成的 .res 文件具有 ID 为 10000 的正确字符串“LV”(我使用资源编辑器进行了检查)。

在 delphi coude 中,资源被加载到单元的初始化部分,使用 LoadStr 函数。

喜欢那个.pas: