在我的一个vs 2008 开发的 Win32 程序中,调用 如下代码
BROWSEINFO BrowseDir;
memset( &BrowseDir, 0, sizeof(BrowseDir) );
LPCITEMIDLIST pIdl;
CString strFolderPath;
BrowseDir.hwndOwner = hWnd;
BrowseDir.lpszTitle = lpTitle;
BrowseDir.pidlRoot = NULL;
BrowseDir.ulFlags = 0;
BrowseDir.pszDisplayName= strFolderPath.GetBuffer( MAX_PATH );
BrowseDir.lParam = NULL;
BrowseDir.lpfn = NULL;
if (!strCurrDir.IsEmpty())
{
g_strCurrDir = strCurrDir;
BrowseDir.lpfn = FECFolderProc;
}
TRY
{
//在此处出现异常
pIdl = SHBrowseForFolder( &BrowseDir );
}
CATCH_ALL(e)
{
DWORD dwError =WSAGetLastError();
AfxTrace("%s:%d %d\n", __FILE__, __LINE__, dwError);
}
END_CATCH_ALL
strFolderPath.ReleaseBuffer();
strFolderPath.Empty();
if ( pIdl != NULL )
{
SHGetPathFromIDList( pIdl, strFolderPath.GetBuffer( MAX_PATH ) );
strFolderPath.ReleaseBuffer();
}
return strFolderPath;
异常后弹出界面,报 0x000006BA PRC服务器不可用。查了查百度也没有找出来有这个异常的。