Yes it is posible but it'a a little tricky.
The single argument of this function is a pointer to a BROWSEINFO structure used as [in,out].
You should fill the pidlRoot(LPCITEMIDLIST type) member of this structure with the ITEMIDLIST of the folder you want your folder dialog to start with.
Below is an example function from MSDN:
LPITEMIDLIST PidlBrowse(HWND hwnd, int nCSIDL, LPSTR pszDisplayName)
{
LPITEMIDLIST pidlRoot = NULL;
LPITEMIDLIST pidlSelected = NULL;
BROWSEINFO bi = {0};
LPMALLOC pMalloc = NULL;
SHGetMalloc(&pMalloc);
if(nCSIDL)
{
SHGetFolderLocation(hwnd, nCSIDL, NULL, NULL, &pidlRoot);
}
else
{
pidlRoot = NULL;
}
bi.hwndOwner = hwnd;
bi.pidlRoot = pidlRoot;
bi.pszDisplayName = pszDisplayName;
bi.lpszTitle = "Choose a folder";
bi.ulFlags = 0;
bi.lpfn = NULL;
bi.lParam = 0;
pidlSelected = SHBrowseForFolder(&bi);
if(pidlRoot)
{
pMalloc->Free(pidlRoot);
}
pMalloc->Release();
return pidlSelected;
}
HTH, s-)
Blessed is he who in the name of justice and goodwill, sheperds the weak through the valley of darkness...