3条回答 默认 最新
- 双浇面 2022-10-13 15:27关注
还是不行,老样子。我得从win11的programmes下面把文件复制出来,放到桌面上,建个文件夹,然后无论是在文件夹内运行或是发个快捷方式到桌面,都能正常运行了。难道是我根据获取的路径创建数据库的方式有问题。我把获取的路径转换为unicode,然后再该路径下自动生成数据库。
char* CDataBase::AnsiToUtf8(char* str)
{
WCHAR* strA;
int i= MultiByteToWideChar(CP_ACP,0,str,-1,NULL,0);
strA = new WCHAR[i];
MultiByteToWideChar(CP_ACP,0,str,-1,strA,i);i= WideCharToMultiByte(CP_UTF8,0,strA,-1,NULL,0,NULL,NULL); char *strB=new char[i]; WideCharToMultiByte(CP_UTF8,0,strA,-1,strB,i,NULL,NULL); //strB即为所求 return strB;
}
解决 1无用