Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для bezumes

Пользователь


Сообщения: 68
Благодарности: 1

Профиль | Отправить PM | Цитировать


Цитата:
Может переменную "счётчика" не обнулил до начала циклов, и вней присутствуют левые данные.
Сам счетчик в начале цикла for обнуляется. возможно надо HANDLE hf обнулить. Я попробЫвал написать hf=INVALID_HANDLE_VALUE; и у меня вообще отрицательные значения получились. хотя если в конце стоит FindClose(hf); то этого не надо делать
Код: Выделить весь код
         CString bukva[26]={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
	char temp[100];	
	for(int i=0;i<26;i++)
	{		
		hFirstFile=0;//обнуляем 
		hFirstFile=0;	// и здесь обнуляем
		WIN32_FIND_DATA lpFindFileData ;
		WIN32_FIND_DATA FindFileData;
		HANDLE hf;	
		hf=INVALID_HANDLE_VALUE;
		hf=FindFirstFile(_T(bukva[i]+":\\*.*"), &FindFileData);
		if (hf!=INVALID_HANDLE_VALUE)
			{
				do
				{hFirstFile=0;hFirstFile=0;
					
					
					if ((FindFileData.dwFileAttributes&&FILE_ATTRIBUTE_DIRECTORY) == FILE_ATTRIBUTE_DIRECTORY)
					{
						hFirstFile++;
					}
					else
					{
						hFirstFile1++;
					}					
				}
				while (FindNextFile(hf,&FindFileData)!=0);
				m_info += " В корне диска "+_T(bukva[i]+" ");
				itoa( (int)hFirstFile, temp, 10 );
				m_info += (CString)&temp[0]; m_info += "папок";m_info += "\r\n";
				m_info += " В корне диска "+_T(bukva[i]+" ");
				itoa( (int)hFirstFile1, temp, 10 );
				m_info += (CString)&temp[0]; m_info += " файлов";m_info += "\r\n";
				FindClose(hf);
			}
	}
	UpdateData(false);

-------
Ты говоришь я Демон, так и есть.
Со мною не видать тебе удачи.
Навеки моё дело зло и месть.
Для демона не может быть иначе.(с) КиШ


Отправлено: 14:21, 22-12-2006 | #16