我制作了一个像这样的Windows上下文菜单项:
key:HKEY_CLASSES_ROOT * \ shell \ Test \ command
命令:“c:\ Test.exe”“%1”
发送“C:\ Users \ John \ Desktop \Testă.pdf”时%1未按预期展开我收到了以下字符串:“C:\ Users \ John \ Desktop \ Testa.pdf” “ă”正在被“a”取代,我不希望这样。 这是编码问题吗?能帮帮我吗?
答案 0 :(得分:0)
谢谢你们,我发现了问题。我的程序使用“int main(int argc,char ** argv)”,甚至在使用windows函数MultiByteToWideChar()后,结果仍然相同。在修改为“int wmain(int argc,PWSTR * argv)”后,我终于得到了我想要的结果。
似乎windows只将unicode字节发送到“wmain”。