本帖最后由 boylafong 于 2014-07-15 13:57:38 编辑

解决方案 »

  1.   

    有条件的朋友可以自己做个小程序测试下,用vs2005建立一个ocx插件,字符集不用Unicode
    再在vs2005下调用这个插件, edit中输入中文就变乱码.
      

  2.   

    VC2005以前版本可选多字节,VC2005及以上版本默认使用UNICODE。重点在于的新编印环境下应与你多字节的选择符合。
    比如很多代码中需要加入类似
    .Format(_T
    的模式。就是将手写输入字符改造成多字节模式。
      

  3.   


    都是多字节.而且vc6下可以.vs2005不行,同一个插件.现在是属性框上显示的内容都是乱码,跟Format有关系吗?
      

  4.   


    属性页上edit输入中文就是乱码,复制粘贴就可以.我不改属性,就是edit 中输入的中文变乱码.
      

  5.   

    控件认得是unicode,字符集选择不设置是错误的
      

  6.   


    我选的是多 字节字符集啊。多字节字符集不是unicode,并且多多字节有好多编码格式ansi utf8等等,com部件内部一般都是使用unicode
      

  7.   


    我选的是多 字节字符集啊。多字节字符集不是unicode,并且多多字节有好多编码格式ansi utf8等等,com部件内部一般都是使用unicode晕,我不是讨论Unicoe跟多字节的,我想知道这个问题如何解决?
      

  8.   

    不行就换个VS08或者VS10试试吧,如果这真是bug的话。或者就是把需要用到多字节的那些代码封装为多字节dll,控件部分的ocx为unicode,然后ocx调用dll
      

  9.   

    以前项目遇到过,就是编码问题,后来装成unicode就没有这个问题了,没修改前,只能一个字一个字的输入,不然只有第一个字是正常的其他的字符都是乱码
      

  10.   

    我知道用Unicode是可以的,也知道是字符集的问题,可是我也说了暂时不考虑,由于插件程序一个不是我做的,另一个比较庞大,是老的vc6写的,需要改的地方太多,所以才来问有没有其他办法,不要再建议我用Unicode编译了。
      

  11.   

    我知道用Unicode是可以的,也知道是字符集的问题,可是我也说了暂时不考虑,由于插件程序一个不是我做的,另一个比较庞大,是老的vc6写的,需要改的地方太多,所以才来问有没有其他办法,不要再建议我用Unicode编译了。那只能继续纠结着了