0

我制作了一个这样的 Windows 上下文菜单项:
key: HKEY_CLASSES_ROOT*\shell\Test\command
command: "c:\Test.exe" "%1"

发送“C:\Users\John\Desktop\Testă.pdf”时,%1 未按预期扩展我收到以下字符串:“C:\Users\John\Desktop\Testa.pdf”“ă”正在替换为“a”,我不想要那个。这是一个编码问题吗?有人可以帮我吗?

4

1 回答 1

0

谢谢各位,我发现问题了。我的程序使用的是“int main(int argc, char** argv)”,即使在使用 Windows 函数 MultiByteToWideChar() 之后,结果仍然相同。修改为“int wmain (int argc, PWSTR* argv)”后,终于得到了我想要的结果。

似乎 Windows 仅将 unicode 字节发送到“wmain”。

于 2013-02-22T08:41:33.630 回答