Проблема в том, что по нажатию кнопочки Fill у меня запускается поток, который, при выборе новой директории из диалога, я должен прервать и запустить заново. Я совсем запутался, если я устанавливаю флажок то мне эта кнопка уже недоступна, а мне она очень нужна.
Добавлено через 17 минут и 53 секунды:Все, разобрался.. Совсем запарился уже))
LRESULT CMainDlg::OnFill(WORD /*wNotifyCode*/, WORD wID, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
{
        static bool once = false;
        if(!once)
        {
                once = true;
        TCHAR szPath[MAX_PATH];
        LPMALLOC pMalloc;
        if (::SHGetMalloc(&pMalloc) == NOERROR) 
        {
                BROWSEINFO bi;
                ::ZeroMemory(&bi,sizeof bi);
                bi.ulFlags = BIF_RETURNONLYFSDIRS;
                LPITEMIDLIST pidl = ::SHBrowseForFolder(&bi);
                if (pidl != NULL) 
                {
                        if (::SHGetPathFromIDList(pidl, szPath))
                        {
                                if (szPath)
                                {
                                
                                        if (fScanner_->my_thread_)
                                        {
                                                fScanner_->StopThread ();
                                        }
                                        fScanner_->StartThread (szPath);
                                }
                        }
                }
        }
                once = false;
        }
        return 0;
}