Страница: 1 | 2 | 3 |
Вопрос: Как создать путь, длинее 220 символов?
Добавлено: 26.05.07 13:36
Автор вопроса: Леша | ICQ: 362231326
Здравствуйте. Подскажите пожалуйста, как создать путь длиннее 220 (или около того) символов. Заранее спасибо.
Описание: есть текстовый файл (paths.txt), расположенный App.Path & "\paths.txt", из которого нужно читать строку и создавать одноименный путь.
Содержимое файла:
ЭКГ при инфаркте миокарда
ЭКГ при инфаркте миокарда\Диагностика инфаркта миокарда при блокадах ножек пучка Гиса и ветвей левой ножки и синдрома WPW
ЭКГ при инфаркте миокарда\Диагностика инфаркта миокарда при блокадах ножек пучка Гиса и ветвей левой ножки и синдрома WPW\Диагностика инфаркта миокарда передней стенки левого желудочка при блокаде правой ножки пучка гиса
ЭКГ при инфаркте миокарда\Диагностика инфаркта миокарда при блокадах ножек пучка Гиса и ветвей левой ножки и синдрома WPW\Диагностика инфаркта миокарда передней стенки левого желудочка при блокаде правой ножки пучка гиса\Диагностика инфаркта миокарда задней стенки левого желудочка при блокаде правой ножки
ЭКГ при инфаркте миокарда\Диагностика инфаркта миокарда при блокадах ножек пучка Гиса и ветвей левой ножки и синдрома WPW\Диагностика инфаркта миокарда передней стенки левого желудочка при блокаде правой ножки пучка гиса\Диагностика инфаркта миокарда задней стенки левого желудочка при блокаде правой ножки\Диагностика инфаркта миокарда передней стенки левого желудочка при блокаде правой ножки пучка гиса
непосредственно код (на форме кнопка)
Private Sub Command1_Click()
Dim FileNo As Integer
Dim Path As String
FileNo = FreeFile
Open App.Path & "\paths.txt" For Input As FileNo
Do Until EOF(FileNo)
Line Input #FileNo, Path
If Len(Dir(Path, vbDirectory)) = 0 Then
MkDir (Path)
End If
Loop
Close #FileNo
End Sub
Ответы
Всего ответов: 31
Номер ответа: 1
Автор ответа:
Леша
ICQ: 362231326
Вопросов: 9
Ответов: 76
Профиль | | #1
Добавлено: 26.05.07 13:38
P.S. каждая строка текстового файла начинается со слов ЭКГ. Если нет - то єто продолжение предыдущей (просто на экране не умещается)
Номер ответа: 2
Автор ответа:
Silver Ferrum
ICQ: 422640045
Вопросов: 12
Ответов: 144
Профиль | | #2
Добавлено: 26.05.07 13:53
..так тебе сначала папки надо создать
Номер ответа: 3
Автор ответа:
Silver Ferrum
ICQ: 422640045
Вопросов: 12
Ответов: 144
Профиль | | #3
Добавлено: 26.05.07 13:56
ааа... понял что ты делаешь...
Номер ответа: 4
Автор ответа:
EUGY
Вопросов: 0
Ответов: 454
Профиль | | #4
Добавлено: 26.05.07 13:57
Даже вручную в проводнике этого не сделать.
Windows не даст.
Номер ответа: 5
Автор ответа:
Леша
ICQ: 362231326
Вопросов: 9
Ответов: 76
Профиль | | #5
Добавлено: 26.05.07 14:09
а как быть? неужели невозможно?
Номер ответа: 6
Автор ответа:
Arseny
ICQ: 298826769
Вопросов: 53
Ответов: 1732
Профиль | | #6
Добавлено: 26.05.07 14:25
Коллега, а скажите, нахрена Вам длинные названия, когда можно использовать сокращенные?
Названия папок будут использоваться в программе, или их медики будут открывать из чего попадется?
Номер ответа: 7
Автор ответа:
Леша
ICQ: 362231326
Вопросов: 9
Ответов: 76
Профиль | | #7
Добавлено: 26.05.07 14:36
Будут открывать просто из винды, или из программы (структура папок отображается в дереве (аналогично проводнику).
Номер ответа: 8
Автор ответа:
Arvitaly
ICQ: 301746136
Вопросов: 28
Ответов: 549
Web-сайт:
Профиль | | #8
Добавлено: 26.05.07 14:37
На символы, пригодные для наименования папок и файлов, операционной системой накладываются некоторые ограничения:
* не используется в именах символ точки, так как она является разделителем между именем файла и расширением, определяющим тип файла. Вместо точки удобно использовать знак подчеркивания;
* максимально допустимая длина имени файла составляет 255 символов, включая пробелы. Однако очень длинные имена использовать неудобно, так как в проводнике их все равно читать будет трудно;
* имена не должны содержать следующих символов: \ / : * ? " < > |.
Номер ответа: 9
Автор ответа:
Arvitaly
ICQ: 301746136
Вопросов: 28
Ответов: 549
Web-сайт:
Профиль | | #9
Добавлено: 26.05.07 14:38
Папки назови кодовыми именами и создай файл INI, где будут соответствия
Номер ответа: 10
Автор ответа:
Леша
ICQ: 362231326
Вопросов: 9
Ответов: 76
Профиль | | #10
Добавлено: 26.05.07 14:40
P.S. в проводнике получилось создать только 239 символов....
Номер ответа: 11
Автор ответа:
Леша
ICQ: 362231326
Вопросов: 9
Ответов: 76
Профиль | | #11
Добавлено: 26.05.07 14:42
и тогда пусть они работают только из программы! Спасибо!
Номер ответа: 12
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #12
Добавлено: 27.05.07 03:23
Используй путь вида \\?\C:\ вместо C:\, тогда максимальная длина пути может быть до ~65к символов
Номер ответа: 13
Автор ответа:
Леша
ICQ: 362231326
Вопросов: 9
Ответов: 76
Профиль | | #13
Добавлено: 27.05.07 22:58
а подскажите подробнее пожалуйста - у меня ни при помощи mkdir ни через FSO не получается создать.
Номер ответа: 14
Автор ответа:
ZagZag
ICQ: 295002202
Вопросов: 87
Ответов: 1684
Профиль | | #14
Добавлено: 28.05.07 00:23
В консоли ввести mkdir \\?\C:\123..
Создастся папка с двумя точками на конце Зайти или както воздействовать через проводник не получается.
На счет длинных путей - сам проверяй. Не хочу рисковать ))
Номер ответа: 15
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #15
Добавлено: 28.05.07 03:34
Я проверял, создавал путь до 65к символов. Зайти ни в Explorer, ни в Total, ни в cmd не получилось, пришлось удалять так же - через API.