![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Серверные продукты Microsoft » Microsoft Windows NT/2000/2003 » Вариант решения проблемы IIS FTP и символ "я" |
|
Вариант решения проблемы IIS FTP и символ "я"
|
Новый участник Сообщения: 14 |
Добрый день, уважаемые форумчане.
Все знают, эту проблему, что не возможно скачать файл с FTP если в его имени (или имени папки) содержится буква "я". Для протокола этот символ (его код) говорит о конце передачи. При этом на символ "Я" такой реакции нет. План зрел не долго, захотел в ручную переименовать все файлы во всех FTP поддиректориях... Но организовав поиск по маске *я, понял, что переименовать 2500 файлов не смогу. Тогда подошел к проблеме иначе, а именно написать VB скрипт, который сам пройдется по подпапкам и заменит символ "я" на "Я". Вот этим и занялся, это и помогло! ![]() ![]() '================================================================= 'Скрипт, решающий проблемы, связанные с IIS FTP и буквой "я" | 'скрипт проходит по всем поддиректориям от указанной директории | 'и заменяет букву "я" на "Я" во всех именах файлов и дерикториях. | '================================================================= Sub RunSubFolders (FolderInto) 'процедура переименования Set FSO = CreateObject("Scripting.FileSystemObject") Set Folder = FSO.GetFolder(FolderInto) For Each iFile in Folder.Files 'цикл проверки и переименования всех файлов в текущей директории NameFile = Mid(iFile, InStrRev(iFile,"\")+1) If Detect_ya(NameFile) Then On Error Resume Next FSO.MoveFile iFile, Mid(iFile,1,InStrRev(iFile,"\")) + convert_ya(NameFile) End If Next On Error Resume Next For Each iSubFolder in Folder.SubFolders 'цикл проверки и переименования всех папок в текущей директории NameFolder = Mid(iSubFolder, InStrRev(iSubFolder,"\")+1) If Detect_ya(NameFolder) Then On Error Resume Next FSO.MoveFolder iSUbFolder, Mid(iSubFolder,1,InStrRev(iSubFolder,"\")) + convert_ya(NameFolder) End If RunSubFolders (iSUbFolder) Next End Sub function convert_ya(str_in) 'функция повышения регистора буквы "я" str_out = Replace(str_in,"я","Я") convert_ya = str_out end function function Detect_ya(Str_in) 'функция обнаружения буквы "я" в строке If (InStr(Str_in,"я")<>0) then Detect_ya = True else Detect_ya = False End If End Function RootFTPFolder = "C:\Test_Folder" 'Корневая директория FTP сервера Call RunSubFolders (RootFTPFolder) У меня переименование 2500 файлов и папок заняло 5 минут! Как дальнейшее решние, что бы не объяснять пользователям, что с "Я" создаватьимена файлов не стоит, я просто запланировал выполнение этого скрипта 1 раз в сутки, ночью! ![]() |
|
Отправлено: 13:45, 16-12-2008 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Интерфейс - [решено] Как удалить папку "Моя музыка","Мои Картинки", "Мое видео"? | verdix | Microsoft Windows 2000/XP | 3 | 03-10-2009 23:46 | |
Debian/Ubuntu - [решено] Пропали кнопки "свернуть","закрыть","во весь екран" в папках | Alex.sys | Общий по Linux | 5 | 02-04-2009 11:13 | |
Службы - Vista"Не удается отобразить решение" при нахождении решения проблемы в сети | Ser1Mel | Microsoft Windows Vista | 14 | 10-04-2008 01:06 | |
[решено] Вариант решения конфликта IE7 и RunOnceEx | Kirk Hammett | Автоматическая установка Windows 2000/XP/2003 | 5 | 17-04-2007 17:40 | |
Запретить/удалить пункт "Programs" ("Программы") из меню кнопки "Start" ("Пуск") | submaster | Microsoft Windows NT/2000/2003 | 5 | 13-09-2006 12:29 |
|