Click here to Skip to main content
14,357,784 members

C / C++ / MFC

 
GeneralRe: CString.Format anomaly Pin
jeron117-Jun-15 9:19
memberjeron117-Jun-15 9:19 
QuestionMultithread c Windows Pin
mosine16-Jun-15 3:22
membermosine16-Jun-15 3:22 
AnswerRe: Multithread c Windows Pin
Jochen Arndt16-Jun-15 3:33
mveJochen Arndt16-Jun-15 3:33 
GeneralRe: Multithread c Windows Pin
mosine16-Jun-15 3:47
membermosine16-Jun-15 3:47 
GeneralRe: Multithread c Windows Pin
mosine16-Jun-15 4:01
membermosine16-Jun-15 4:01 
GeneralRe: Multithread c Windows Pin
Jochen Arndt16-Jun-15 4:02
mveJochen Arndt16-Jun-15 4:02 
GeneralRe: Multithread c Windows Pin
mosine16-Jun-15 4:21
membermosine16-Jun-15 4:21 
QuestionFailure to remove folders after using CFileDialog DoModal Pin
Still learning how to code15-Jun-15 22:28
memberStill learning how to code15-Jun-15 22:28 
I picked up a function RecursiveDelete on the internet, as I needed to erase all files and folders on an SD card (as part of a larger project). I was having problems insofar as the function would fail on removing the folders after CFileDialog DoModal - there were two nested folders, the deepest failing with code 32 ("in use by another proicess") and the shallowest with 145 ("folder not empty" - expected !)
However, if I call the function BEFORE the DoModal, then everything works fine.
I have extracted the relevent code into a simpler project and it still fails
Perhaps some kind soul can throw some light on why this is so !!

CFileDialog dlgFileBrowse(true);

	UINT uiFileBrowseDlgRC;

// OK here 
	RecursiveDelete("F:");		// 20150615  

//
	uiFileBrowseDlgRC = dlgFileBrowse.DoModal();

//   FAILS HERE - YES


void CDeleteFolderTestDlg::RecursiveDelete(CString szPath)
{
	CFileFind ff;
	BOOL bResult;
	CString path = szPath;
	
	if(path.Right(1) != '\\')	
		path += '\\';			

	path += "*.*";

	bResult = ff.FindFile(path);
	BOOL bItemDelete;
	DWORD dwLastError;
	CString szFilePath;

	while(bResult)
	{
		bResult = ff.FindNextFile();
		if (!ff.IsDots() && !ff.IsDirectory())
		{
			szFilePath = ff.GetFilePath();
			bItemDelete = DeleteFile(szFilePath);
			if(!bItemDelete)
				dwLastError = GetLastError();
		}
		else if (ff.IsDirectory() && !ff.IsDots())	
		{
			path = ff.GetFilePath();

			RecursiveDelete(path);

			bItemDelete = RemoveDirectory(path);
			if(!bItemDelete)
				dwLastError = GetLastError();
		}
	}
}

//	RecursiveDelete("F:");

Doug


modified 16-Jun-15 3:39am.

AnswerRe: Failure to remove folders after using CFileDialog DoModal Pin
Freak3016-Jun-15 1:21
memberFreak3016-Jun-15 1:21 
GeneralRe: Failure to remove folders after using CFileDialog DoModal Pin
Jochen Arndt16-Jun-15 1:24
mveJochen Arndt16-Jun-15 1:24 
GeneralRe: Failure to remove folders after using CFileDialog DoModal Pin
Still learning how to code16-Jun-15 3:08
memberStill learning how to code16-Jun-15 3:08 
AnswerRe: Failure to remove folders after using CFileDialog DoModal Pin
Jochen Arndt16-Jun-15 1:22
mveJochen Arndt16-Jun-15 1:22 
GeneralRe: Failure to remove folders after using CFileDialog DoModal Pin
Still learning how to code16-Jun-15 3:12
memberStill learning how to code16-Jun-15 3:12 
GeneralRe: Failure to remove folders after using CFileDialog DoModal Pin
Jochen Arndt16-Jun-15 3:24
mveJochen Arndt16-Jun-15 3:24 
GeneralRe: Failure to remove folders after using CFileDialog DoModal - **** FIXED (I think !) **** Pin
Still learning how to code16-Jun-15 3:54
memberStill learning how to code16-Jun-15 3:54 
GeneralRe: Failure to remove folders after using CFileDialog DoModal - **** FIXED (I think !) **** Pin
Jochen Arndt16-Jun-15 4:19
mveJochen Arndt16-Jun-15 4:19 
QuestionRe: Failure to remove folders after using CFileDialog DoModal Pin
David Crow16-Jun-15 5:21
memberDavid Crow16-Jun-15 5:21 
QuestionExisting VR Frame Renderers Pin
Trevor Johansen15-Jun-15 16:25
memberTrevor Johansen15-Jun-15 16:25 
QuestionLoad CSV file to a database in Windows 64bit Pin
aks.14-Jun-15 23:36
memberaks.14-Jun-15 23:36 
AnswerRe: Load CSV file to a database in Windows 64bit Pin
Jochen Arndt15-Jun-15 0:45
mveJochen Arndt15-Jun-15 0:45 
QuestionNew to C++ and Programming, Absolutely new Pin
Member 1176562614-Jun-15 19:36
memberMember 1176562614-Jun-15 19:36 
AnswerRe: New to C++ and Programming, Absolutely new Pin
Amarnath S14-Jun-15 20:00
professionalAmarnath S14-Jun-15 20:00 
GeneralRe: New to C++ and Programming, Absolutely new Pin
Member 1176562614-Jun-15 20:26
memberMember 1176562614-Jun-15 20:26 
GeneralRe: New to C++ and Programming, Absolutely new Pin
Richard MacCutchan14-Jun-15 22:42
protectorRichard MacCutchan14-Jun-15 22:42 
QuestionAfxGetApp anomaly Pin
ForNow10-Jun-15 10:18
memberForNow10-Jun-15 10:18 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.