在 GeoLite2 国家数据库中,有人知道是否可以在任何地方找到两个字符国家/组织代码的列表或它使用的来源是什么?
void file_explore(std::wstring str) {
ITEMIDLIST *pIDL = ILCreateFromPath(str.c_str());
if ( NULL != pIDL ) {
SHOpenFolderAndSelectItems(pIDL , 0 , 0 , 0);
ILFree(pIDL);
} else {
std::wstring p = str.substr(0 , str.find_last_of('\\'));
ShellExecute(NULL , L"explore" , p.c_str() , NULL , NULL , SW_SHOWNORMAL);
}
}
Run Code Online (Sandbox Code Playgroud)
上面的编译没有针对 32 位的警告,但对于 64 位,我收到警告 c4090 但是文档:https ://msdn.microsoft.com/en-us/library/k77bkb8d.aspx声明这是 ac 错误,我将得到 c++ 的 C2440但我正在使用c++。
抱怨的代码行是:
ITEMIDLIST *pIDL = ILCreateFromPath(str.c_str());
Run Code Online (Sandbox Code Playgroud)
如何解决 64 位版本的此问题?