c如何弹出保存路径/保存文件对话框

//保存路径

TCHAR szBuffer[MAX_PATH] = {0};  
    BROWSEINFO bi;  
    ZeroMemory(&bi,sizeof(BROWSEINFO));  
    bi.hwndOwner = NULL;  
    bi.pszDisplayName = szBuffer;  
    bi.lpszTitle = _T("选择保存文件路径:");  
    bi.ulFlags = BIF_RETURNFSANCESTORS;
    LPITEMIDLIST idl = SHBrowseForFolder(&bi);  
    if (NULL == idl)  
    {  
      return 0;  
    }  
    SHGetPathFromIDList(idl,szBuffer);

//保存对话框;
   TCHAR szFilters[]= _T("*.csv");
   CFileDialog dlg(FALSE,NULL,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,szFilters);
   if(IDOK==dlg.DoModal())
   {
    //现在的当前路径变成了所打开文件时的路径,故只需要拿到文件名即可对文件进行操作;
    TCHAR curPath[MAX_PATH];
    GetCurrentDirectory(MAX_PATH,curPath); //可以拿到当前文件夹的路径,此时curPath就是当前文件所处的路径,变成了当前路径;
   }

//保存文件

原文地址:https://www.cnblogs.com/whiteIcrow/p/3555367.html