vs2008 编码改成多字节字符集无法运行

unknownperson 2010-02-03 02:15:17
程序开始是选了unicode库的对话框,
然后我刚才把它改成了多字节,
结果不能运行勒.
调试到主窗口的.domodal()就return false,就直接自己调试结束了
求救!
...全文
343 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
学习学习
phenixpip 2010-04-02
  • 打赏
  • 举报
回复
我之前也遇到类似的问题,后来没办法,只能在程序中写函数对Unicode和AscII进行转化:
bool CCallbayConferenceSystemDlg::WideToAsc(wchar_t *wp,char *p)
{
bool ret = false;
if(wp != NULL)
{
int count = WideCharToMultiByte(CP_ACP,0,wp,-1,0,0,NULL,NULL);

if(count > 0)
{
WideCharToMultiByte(CP_ACP, 0, wp, -1, p, count + 1 , NULL, NULL);
p[count] = '\0';
ret = true;
}
}

return ret;
}

bool CCallbayConferenceSystemDlg::AscToWide(char *p,wchar_t *wp)
{

bool ret = false;
if(p != NULL)
{
int count = MultiByteToWideChar(CP_ACP, 0, p , strlen(p), NULL , 0);

if(count > 0)
{
MultiByteToWideChar(CP_ACP, 0, p , strlen(p), wp , count+1);
wp[count] = '\0';
ret = true;
}
}

return ret;
}
希望对你有帮助。
jianghandaxue 2010-02-03
  • 打赏
  • 举报
回复
bang ding
朱小童 2010-02-03
  • 打赏
  • 举报
回复
问题说得太宽泛,不够详细,很难解答
unknownperson 2010-02-03
  • 打赏
  • 举报
回复

INITCOMMONCONTROLSEX InitCtrls;
InitCtrls.dwSize = sizeof(InitCtrls);
// 将它设置为包括所有要在应用程序中使用的
// 公共控件类。
InitCtrls.dwICC = ICC_WIN95_CLASSES;
InitCommonControlsEx(&InitCtrls);

CWinApp::InitInstance();

AfxEnableControlContainer();

// 标准初始化
// 如果未使用这些功能并希望减小
// 最终可执行文件的大小,则应移除下列
// 不需要的特定初始化例程
// 更改用于存储设置的注册表项
// TODO: 应适当修改该字符串,
// 例如修改为公司或组织名
SetRegistryKey(_T("应用程序向导生成的本地应用程序"));

CIPToolDlg dlg;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: 在此放置处理何时用
// “确定”来关闭对话框的代码
}
else if (nResponse == IDCANCEL)
{
// TODO: 在此放置处理何时用
// “取消”来关闭对话框的代码
}

// 由于对话框已关闭,所以将返回 FALSE 以便退出应用程序,
// 而不是启动应用程序的消息泵。
return FALSE;


我用unicode的时候是可以正常运行的 但是改成多字节就不行了 调试到
END_MESSAGE_MAP() 就跳回 没有oninitdialog()
gdstcwl 2010-02-03
  • 打赏
  • 举报
回复
InitInstance()函数贴出来看看
unknownperson 2010-02-03
  • 打赏
  • 举报
回复
是mfc的哦 程序

16,473

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧