代码之家  ›  专栏  ›  技术社区  ›  Charles Faiga

DELPHI:EEncodingError-windows xp embedded上的无效代码页

  •  3
  • Charles Faiga  · 技术社区  · 16 年前

    嗨,我有一个很好用的应用程序 windows xp pro、windows Visa、windows 7

    并给出以下错误:

    EEncodingError-无效代码页

    当应用程序是用delphi2006制作的时候,它可以在windowsxpembedded上运行

    2 回复  |  直到 13 年前
        1
  •  3
  •   Remy Lebeau    16 年前

    这个 TEncoding.ASCII 属性使用代码页20127,默认情况下,该代码页未安装在XP Embedded上。你必须手动安装。这个 TEncoding 类在D2006中不存在。

    TEncoding.ASCII码 默认情况下为其字符串编码。我们知道,在xpembedded上使用Indy时会发生这种错误。

        2
  •  0
  •   Mason Wheeler    16 年前

    什么时候撞车?启动时,还是以后?

    这个错误只在一个地方发现,至少在RTL中。在SysUtils中, constructor TMBCSEncoding.Create(CodePage, MBToWCharFlags, WCharToMBFlags: Integer); ,由TEncoding调用以设置字符串编码。

    CodePage 参数和调用 GetCPInfo 如果它失败了,就会引发这个异常。从MSDN文档和异常消息来看,可能是您的应用程序试图使用xpembedded不支持的多字节字符集的字符串。你对使用不同字母表的外国语言的字符串或文本工作有什么不寻常的地方吗?

    推荐文章