【发布时间】:2012-04-27 23:14:45
【问题描述】:
我在一家位于英国的软件公司工作。我们有一个最近移植到 64 位 Windows 的程序。在构建 64 位版本的同时,我们也从 Visual Studio 2003 切换到 2010,继续使用 MFC 的代码页版本(mfc100.dll)。
在我们完全发布程序后不久,我们收到了来自使用 64 位 Windows 7 的日本用户的错误报告。如果文件名中包含日文字符(甚至文件夹名称中包含日文字符)是以交互方式打开,程序失败并显示以下消息: “遇到了不恰当的论点”
尝试用新名称保存文件是类似的。该程序的 Visual Studio 2003 版本按预期工作。
程序使用 MFC 类 CFileDialog 来提示用户,并使用 Windows CopyFile() 函数将文件复制到/从用户指定的位置。
有什么线索可以解决这个问题吗?
【问题讨论】:
-
您使用的是 Unicode 版本吗?
-
没有。从长远来看,我们打算对其进行转换,但该程序可以追溯到 Windows 95 时代并且相当大。
-
安德鲁,你有没有解决这个问题?我在仍然使用 MBCS 的旧应用程序上看到了同样的情况
标签: windows unicode mfc internationalization