wince工程 char 转 wchar_t有关问题

wince工程 char 转 wchar_t问题
wince工程要显示中文要用Unicode编码方式。但我通过MultiByteToWideChar()将char转换wchar_t。(如下)
(wince系统是英文的)

  char a[] = "我在测试";
  int buffersize = MultiByteToWideChar(CP_ACP,0,a,-1,NULL,0);
  wchar_t *wbuffer;
  wbuffer = new wchar_t[buffersize * sizeof(wchar_t)];
 if(!wbuffer)
  {
  delete []wbuffer;
  }
  MultiByteToWideChar(CP_ACP,0,a,-1,wbuffer,buffersize);
  DrawTextW( dc.m_hDC ,wbuffer,buffersize, &rect , NULL );

但为什么打印出来还是乱码呢??????



------解决方案--------------------
将CP_ACP替换为CP_UTF8,应该就可以了
------解决方案--------------------
是没有转换码表造成的。。。
可以试试 libconv
------解决方案--------------------
如果转换的不是,一般是MultiByteToWideChar()函数的第一个参数错误

当然,前提 是 CE系统必须支持相应的codepage,否则无法进行转换的.