一个简单的mfc程序,开发是用中文的vs2005,两个dll一个exe,release出来后在其他中文xp上运行时正确的,但是用英文xp测试时,开不起来,双击后报错,说配置错误,重新安装可能会解决这个错误,希望各位给点意见

解决方案 »

  1.   

    有没有在英文xp上,安装exe需要的运行库?
      

  2.   

    应该不要吧,我中文操作系统也是新的,就拷了3个release文件进去,同样的
      

  3.   

    在英文系统下调试,跟踪错误
    注意编码MBCS/UNICODE
      

  4.   

    静态编译?
    工程是a还是unicode?
      

  5.   

    unicode的,另外我插过了,英文系统里面是有mfc运行时的,在system32下面
      

  6.   

    我想统一用unicode编码,应该可行吧,不用转成多字节的吧?不然就要两个版本了……
      

  7.   

    尽量将资源内容都改成英文的。
    另外如果你的程序要显示汉字,需要在英文系统上安装中文语言包。
    去看看这个:http://msdn.microsoft.com/en-us/goglobal/bb978454
    注意Language Packs。XP的国际化内容貌似不再支持了,不过eMule里应该是可以搜到的,可以直接下一个XP Professional MUI Packs光盘,有ISO的。
      

  8.   

    首先确定一下你的编译选项,再确定一下你的DLL中的资源,最后确定一下主程序中用到的资源。
      

  9.   

    今早起来用英文版vs2010在中文win7上编译了一下,release文件夹里面加了两个dll在英文xp上运行通过了,但是用vs05在win7上release以后再英文xp上运行还是报同样的错误,估计不是我程序的问题吧,情况就是这样,各位高手有什么想法么
      

  10.   

    那两个dll是mfc100u.dll,msvcr100.dll。缺少其中任何一个都不能运行,我估计这两个是visual c++ 2010 redistribution中的dll吧
      

  11.   

    解决了,原来在dll项目里面使用了当前windows的mfcdll,应该要使用共享dll,结贴给分