Asp - не работает CreateObject("Scripting.FileSystemObj

Обсуждение серверного программирования.

Модераторы: Duncon, Yurich

Ответить
SleepWalker
Сообщения: 2
Зарегистрирован: 11 ноя 2004, 00:29

11 ноя 2004, 00:56

Пожалуйста помогите, кто может. Проблема в следующем:
есть код

Код: Выделить всё

<%
Sub TreeModel(path)  

  Const ForReading = 1
  Dim  fso, theFile, retString

  Set fso = CreateObject("Scripting.FileSystemObject")
  Set theFile = fso.OpenTextFile(path, ForReading, False)

  Do While theFile.AtEndOfStream <> True
    ' обработка файла
  Loop

  theFile.Close
End Sub
%>
Код этот вполне рабочий. Он работал и работаёт до сих пор в нашем университете (у меня локальная копия сайта универа), но у меня дома работать он перестал.

Т.е. если запустить этот код, к примеру, http://localhost/../some_file.asp, который использует этот sub, то страница догружается до 38% (почему именно до 38 ?) и всё - можешь ждать хоть день - ничего нового не увидишь.

Я предполагаю, что дело в том, что данный Scripting, я уж не знаю,
был прописан в реестре, а я между делом устанавливал себе некоторые компоненты active-x, и из реестра возможно удалил впоследствии что-нибудь лишнее, в связи с чем работать код перестал. Хотя это только моё предположение, возможно дело совсем в другом.
К сведению, дома у меня ISS v. 5.0, может пригодится.
Спасибо !
Аватара пользователя
AiK
Сообщения: 2274
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

11 ноя 2004, 03:16

Действительно, ActiveX может пострадать. У тебя же почему-то нет проверки создался ли обект. И открылся ли файл, кстати, тоже.
Кроме всего прочего, нет у меня уверенности, что для пустого файла AtEndOfStream будет установлен в True, т.е. твой скрипт может зациклиться. А судя по описываемому поведению так оно и происходит.
Даже самый дурацкий замысел можно воплотить мастерски
SleepWalker
Сообщения: 2
Зарегистрирован: 11 ноя 2004, 00:29

11 ноя 2004, 11:14

Проверки открылся ли файл действительно нет, но это потому, что файл заведомо существует. Он создаётся в java коде (не путать с java-script ), а там как раз и осуществляются всевозможные проверки. И кстати прежде, чем писать в форум я разумеется проверял
на всевозможных тестах, что ли данный код: передавал в path созданный не пустой небольшой файл (мало ли), выводил сам path, для того чтобы проверить корректность пути...
Хорошо, если это действительно из-за active-x, то как можно восстановить работоспособность кода.
Спасибо ! Буду признателен !
Ответить