Вопрос № 54421: Здравствуйте эксперты!
Я начал писать программы совсем недавно, пользуюсь компилятором Microsoft Visual Studio v.6.0. У меня возникла следующая проблема: при написании программы на другом компиляторе либо на другом компьютере но на том же компиля...Вопрос № 54422: Здравствуйте.
Использую VS7 под Windows.
Вопросы про навигацию среди файлов и папок.
1) Как получить имена всех дисков на HDD?
2) Как пробежаться по свему дереву каталогов на каждом диске и сохранить имена файлов и папок?
3) Как п...
Вопрос № 54.421
Здравствуйте эксперты!
Я начал писать программы совсем недавно, пользуюсь компилятором Microsoft Visual Studio v.6.0. У меня возникла следующая проблема: при написании программы на другом компиляторе либо на другом компьютере но на том же компиляторе правильно написанная и работающая программа, запуская программу у себя она не работает выдавая ошибки?
Спасибо за ответ!
Отправлен: 05.09.2006, 16:12
Вопрос задал: EKV (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: GeD
Здравствуйте, EKV!
Попробуйте добавлять в самом начале программы инклуды и пространства имен в след.виде(привожу необходимый минимум для ввода-вывода и простейших мат. операций):
PS: У меня такой способ помог при переносе текста программы с Borland C++ 5 на MS Visual Studio 2003.
Ответ отправил: GeD (статус: 1-ый класс)
Ответ отправлен: 05.09.2006, 16:33
Вопрос № 54.422
Здравствуйте.
Использую VS7 под Windows.
Вопросы про навигацию среди файлов и папок.
1) Как получить имена всех дисков на HDD?
2) Как пробежаться по свему дереву каталогов на каждом диске и сохранить имена файлов и папок?
3) Как произвести запись/чтение в отдельный файл с определенной позиции?
4) Как удалить файл или папку со всем содержимым?
Если можно превидите примеры с использованием стандартных функций Win32 Api.
Отправлен: 05.09.2006, 16:13
Вопрос задал: Zeitgeist (статус: 1-ый класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 5)
Отвечает: Сухомлин Кирилл Владимирович
Здравствуйте, Zeitgeist!
1) Это вам поможет.
2) WinAPI: FindFirstFile, FindNextFile, и что-то типа FindClose.
3)
а) Открыть как поток, потом использовать метод seek (типа iostream::seek)
б) int fseek(FILE *stream, long offset, int origin); // stdio.h
4)
а) перебрать все файлы и папки вышеуказанным способом и последовательно удалить все. Ес-сно, рекурсивным обходом по дереву =)
папка удаляется BOOL RemoveDirectory(LPCTSTR lpPathName); //только пустая
файл - BOOL DeleteFile(LPCTSTR lpFileName);
б) ShellExecute(NULL, NULL, "RD" /* или "RMDIR" */ + " /S /Q", dir_name, NULL, SW_HIDE);
Это все к тому, как удалить сразу дерево директорий. Как удалить один файл, см. выше =)
А еще из консоли можно удалять с помощью команд DEL/ERASE. Но, по-моему, в данном случае они не так удобны.
--------- Не узнаешь - не попробуешь.