Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Создание хардлинков (hardlinks) - не работает скрипт, взятый с MSDN (http://forum.oszone.net/showthread.php?t=140908)

Noomorph 24-05-2009 12:17 1126191

Создание хардлинков (hardlinks) - не работает скрипт, взятый с MSDN
 
Вложений: 1
Если вы хотя бы немножко знаете VBScript, то скорее всего легко справитесь с этой проблемой.
Скрипт не мой! Но он мне очень нужен рабочим.

Скрипт взят отсюда: http://msdn.microsoft.com/en-us/library/ms810604.aspx (Code Sample 2 )
На всякий случай, скрипт прикреплен к сообщению.

Что в нем происходит:
Открывается InputBox - вводим имя исходного файла.
Открывается второй InputBox - вводим имя конечного файла.
Скрипт создает конечный файл как жесткую связь с исходным файлом (вдруг кто в танке, хотя и вряд ли: очень (!!!) грубо грубо говоря - копирует исходный файл).

Где происходит ошибка (отладку проводил на PrimalScript):

dim oHL
set oHL = CreateObject("HardLink.Object.1")
oHL.CreateNewHardLink sHardLinkName, sTargetFile


На второй строчке (в смысле, set oHL = ...) и происходит ошибка. Еще раз оговорюсь, что с VBScript я практически не знаком, но мне очень нужна ваша помощь! :blush2:

Petya V4sechkin 24-05-2009 15:40 1126335

Noomorph, насколько я понял, HardLinks.vbs - всего лишь обертка. Чтобы она работала, надо скомпилировать и зарегистрировать библиотеки (исходники на C++ там же в архиве).

Noomorph 24-05-2009 16:25 1126368

Спасибо за ответ!
Сейчас установлю Microsoft Visual C++ 2008 Express Edition и попробую скомпилировать и зарегистрировать библиотеки из того архива.

Noomorph 24-05-2009 16:49 1126386

Вложений: 1
Кажется, в Express нет некоторых очень нужных файлов в папке include\.
Обращение к народу:
Если у вас есть Microsoft Visual C++ Professional Edition (или получше) - попробуйте скомпилировать проект в прикрепленном архиве, пожалуйста. И выложите сюда.

Admiral 24-05-2009 17:33 1126411

Вложений: 1
Noomorph, нужно ещё скачать Platform (Windows) SDK, тогда всё в include, и не только, будет хватать для Express Version.
Скомпилировал в Visual C++ 9.0 Express Edition при наличии Microsoft Windows SDK v6.1
В архиве две версии для двух профилей исходного проекта: ReleaseMinSize и ReleaseMinDependency
Присутствую так же файлы манифесты.

Noomorph 24-05-2009 18:02 1126434

Admiral, огромное спасибо!
Зарегистрировал библиотеку (лично я выбрал для себя ReleaseMinDependency), и скрипт действительно пошел.
Спасибо за совет насчёт SDK 6.1, теперь буду точно знать, что там ActiveX Template Library тоже присутствует. Меня сбил с толку вот этот линк, процитирую:
Цитата:

The Windows 2003 SDK is a free download and comes with ATL headers. NOTE: The Windows 2008 SDK which the 2003 SDK page points you to, doesn't appear to have the ATL headers.


Время: 19:52.

Время: 19:52.
© OSzone.net 2001-