Утилита выводит каталог файлов с подробной информацией
Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain
Утилита выводящая список файлов в заданном каталоге с подробной информацией по каждому из них. (Windows)
(Прошу помощи сам не справлюсь!!!)
(Прошу помощи сам не справлюсь!!!)
- Romeo
- Сообщения: 3126
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
Готов помочь, указанием того, в сторону каких функций смотреть. Вот список:
FindFirstFile
FindNextFile
GetFileSize
GetFileTime
Если нужна "хитрая" информация, наподобие стандартной иконки, ассоцированной с файлом в системе, то можно воспользоваться вот такой Shell API функцией:
SHGetFileInfo
Так же готов дать любые советы по коду, если что-то не будет получаться, но писать утилиту полностью не стану из педагогических соображений.
FindFirstFile
FindNextFile
GetFileSize
GetFileTime
Если нужна "хитрая" информация, наподобие стандартной иконки, ассоцированной с файлом в системе, то можно воспользоваться вот такой Shell API функцией:
SHGetFileInfo
Так же готов дать любые советы по коду, если что-то не будет получаться, но писать утилиту полностью не стану из педагогических соображений.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Romeo писал(а):Готов помочь, указанием того, в сторону каких функций смотреть. Вот список:
FindFirstFile
FindNextFile
GetFileSize
GetFileTime
Если нужна "хитрая" информация, наподобие стандартной иконки, ассоцированной с файлом в системе, то можно воспользоваться вот такой Shell API функцией:
SHGetFileInfo
Так же готов дать любые советы по коду, если что-то не будет получаться, но писать утилиту полностью не стану из педагогических соображений.
Код: Выделить всё
#include "stdafx.h"
#include "windows.h"
#include <iostream>
using namespace std;
void main()
{
WIN32_FIND_DATA FindFileData;
HANDLE hf;
hf=FindFirstFile("c:\\1\\*", &FindFileData);
if (hf!=INVALID_HANDLE_VALUE)
{
do
{
cout << FindFileData.cFileName << endl;
}
while (FindNextFile(hf,&FindFileData)!=0);
FindClose(hf);
}
}
- Romeo
- Сообщения: 3126
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
Именно для этого я дал в своём предыдущем сообщении ссылки на функции GetFileSize и GetFileTime.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Структура WIN32_FIND_DATA содержит в себе поля с информацией о размере файла, времени его создания и об атрибутах.
Romeo писал(а):Именно для этого я дал в своём предыдущем сообщении ссылки на функции GetFileSize и GetFileTime.
Как это реализовать?
WinMain писал(а):Структура WIN32_FIND_DATA содержит в себе поля с информацией о размере файла, времени его создания и об атрибутах.
Как это реализовать?
- Romeo
- Сообщения: 3126
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
Кстати, да. Я и забылWinMain писал(а):Структура WIN32_FIND_DATA содержит в себе поля с информацией о размере файла, времени его создания и об атрибутах.

Что именно реализовать? Вывод поля структуры? Да так же, как реализован вывод имени файла. Через имя объекта, точку и название поля. Или я вопрос неправильно понял?kitkatus писал(а):Как это реализовать?
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Romeo писал(а):Кстати, да. Я и забыл
Что именно реализовать? Вывод поля структуры? Да так же, как реализован вывод имени файла. Через имя объекта, точку и название поля. Или я вопрос неправильно понял?
У меня есть код как внедрить туда что вы написали
Код: Выделить всё
#include "stdafx.h"
#include "windows.h"
#include <iostream>
using namespace std;
void main()
{
WIN32_FIND_DATA FindFileData;
HANDLE hf;
hf=FindFirstFile("c:\\1\\*", &FindFileData);
if (hf!=INVALID_HANDLE_VALUE)
{
do
{
cout << FindFileData.cFileName << endl;
}
while (FindNextFile(hf,&FindFileData)!=0);
FindClose(hf);
}
}
- Romeo
- Сообщения: 3126
- Зарегистрирован: 02 мар 2004, 17:25
- Откуда: Крым, Севастополь
- Контактная информация:
Сделай какое-то самостоятельное усилие. Вся необходимая информация тебе уже предоставлена.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.