我想从GetModuleFileNameW
中提取路径,然后将"\hello.dll"
附加到其中(不进行"\\\\"
)。怎么做? (我对Unicode功能不太好)
答案 0 :(得分:2)
假设您正在使用路径,请使用PathAppendW
功能。请注意,您可以通过附加"hello.dll"
来执行此操作 - 如果PathAppendW
需要,则会添加反斜杠。
或者,您可以非常轻松地编写自己的函数。这是我在std::wstring
s
std::wstring PathAppend(const std::wstring& lhs, const std::wstring& rhs)
{
if (lhs.empty())
{
return rhs;
}
else if (rhs.empty())
{
return lhs;
}
std::wstring result(lhs);
if (*lhs.rbegin() == L'\\')
{
result.append(rhs.begin() + (rhs[0] == L'\\'), rhs.end());
}
else
{
if (rhs[0] != L'\\')
{
result.push_back(L'\\');
}
result.append(rhs);
}
return result;
}