在WinCE 6 上构造LPCWSTR 有什么好方法?我想在 C# 中找到类似于 String.Format() 的东西。我的尝试是:
OSVERSIONINFO vi;
memset (&vi, 0, sizeof vi);
vi.dwOSVersionInfoSize = sizeof vi;
GetVersionEx (&vi);
char buffer[50];
int n = sprintf(buffer, "The OS version is: %d.%d", vi.dwMajorVersion, vi.dwMinorVersion);
ZDKSystem_ShowMessageBox(buffer, MESSAGEBOX_TYPE_OK);
ZDKSystem_ShowMessageBox 指的是用于被黑 Zunes 的 ZDK,网址为: http://zunedevwiki.org
这行代码适用于消息框调用:
ZDKSystem_ShowMessageBox(L"Hello Zune", MESSAGEBOX_TYPE_OK);
我的基本目标是查看在 Zune HD 上运行的 WinCE 的确切版本以了解哪些功能可用(即它是 R2 还是更早版本?)。
此外,我还没有看到 ZDK 的任何标签,所以如果有更合适的内容请编辑!
最佳答案
sprintf 适用于窄字符串。 LPCWSTR
是一个const WCHAR *
,因此您需要宽字符和正确的函数。
例如
WCHAR buf[100];
StringCchPrintfW(buf, _countof(buf), L"Hello, world!");
或使用通用文本函数,并使用 UNICODE 进行编译,
TCHAR buf[100];
StringCchPrintf(buf, _countof(buf), _T("Hello, world!"));
(您还可以使用其他函数,例如 _stprintf_s
、swprintf_s
等)
关于c++ - 使用 C++ (Zune/ZDK) 在 WinCE 上构建 LPCWSTR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2664809/