Не удается получить ссылочный URL - PullRequest
2 голосов
/ 13 мая 2010

У меня есть JavaScript внутри файла .wsf, и я получаю сообщение об ошибке:

C:\bin\LDLSInfo.wsf(53, 34) Windows Script Host: 
Cannot retrieve referenced URL: S:\tools\JScript\lib\StandardWSH.js

В строке 53 написано

<script language="JScript" src="S:\tools\JScript\lib\StandardWSH.js"/>

Я знаю, что LDLSInfo.wsf (основной скрипт) и StandardWSH.js (загружаемый скрипт) работают нормально, потому что я запускал их с другой машины.

Отлично работает на одной машине, а не на другой, оба являются Windows 7 x64. Поэтому я думаю, что мне не хватает некоторых .dll.

Спасибо за помощь,

-jb

Ответы [ 4 ]

4 голосов
/ 26 сентября 2010

Из любопытства знаете ли вы размер файла, на который вы ссылаетесь? Я сам столкнулся с этой проблемой и сумел определить, что если мой файл имеет размер 524288 байт, он работает, но при 524289 байт он не загружается.

Теперь 524288 - это 2 ^ 19-й или 512 КБ, так что, по крайней мере, он численно значим. И запуск сценария в учетной записи без прав администратора мне не помог, поэтому я представляю, что настоящая ошибка является универсальной для более чем одного типа проблем.

Я понимаю, что вы, вероятно, ушли от этой проблемы и, возможно, не располагаете этой информацией, но для других людей поиск проблемы может помочь им. Кроме того, мне удалось решить проблему ограничения размера файла с помощью сценария загрузчика, который использует fso для открытия и оценки слишком большого файла.

Похоже, что по крайней мере еще у одного человека была такая же проблема, как у меня: http://www.tek -tips.com / viewthread.cfm? QID = 1345627 & стр = 131

1 голос
/ 15 февраля 2011

Основываясь на предоставленной ссылке Маркуса Поупа и моем собственном опыте использования точной той же программы VBS с и без WSF, я могу подтвердить, что существует недокументированное ограничение размера, которое приводит к сообщению получить URL-адрес »- обратите внимание, что в этом сообщении говорится не« не удается найти URL-адрес », но объектный файл не может быть« извлечен »(загружен). Я испытал это в Windows 2003. Я не подтвердил максимальный размер извлечения, но ссылка дает 512 КБ, что соответствует моему опыту невозможности загрузить файл размером 1200 КБ.

0 голосов
/ 13 мая 2010

Так что, очевидно, это происходило только когда я запускал .wsf в режиме администратора в командной строке.

Пекка, диск S: одинаков для обеих машин.

Абатищев, я этого не знал, и я установил script.language в "javascript".

Дэвид, cscript - процессор по умолчанию.

Когда я запускаю скрипт, когда не в режиме администратора, он загружает файл просто отлично. Конечно, теперь у меня есть еще одна ошибка, чтобы выяснить, но это совсем другой вопрос. Спасибо за ввод.

-jb

0 голосов
/ 13 мая 2010

Вам может понадобиться проверить, какой процесс пытается запустить скрипт, имеет разрешения на указанный файл. Иногда задачи запускаются как учетные записи, у которых нет прав на чтение файла сценария и т. Д. Хорошо, если вы просто дважды щелкаете wsf в интерактивном режиме на компьютере, и у вашей учетной записи есть разрешения на открытие файла в блокноте. Как отметил Пекка, если сценарий был запланирован как задача, он будет выполняться в неинтерактивном процессе, где S: \ может не отображаться. Копирование в локальный путь рекомендуется для сценариев, запускаемых как запланированные задачи.

Кроме того, убедитесь, что cscript.exe является обработчиком сценариев по умолчанию, а не wscript.exe с помощью этой команды:

cscript.exe //H:CScript
...