PDA

Показать полную графическую версию : Вопросы По WPI


Страниц : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 [18] 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118

DenchikK
19-12-2006, 20:23
VelDmi
Вот как! А у меня вообще такого нет! Не подскажите где конкретно в
этом файле должна быть запись DiskPath='';?

ProkVS
19-12-2006, 20:35
VelDmi
Отказался использовать временные папки после того как не нашёл способ указать путь к файлу распакованному в неё!
Правда не сильно искал, интуитивно понял что при этом параметре файлы копируются в temp, при чем в некорых случаях в папку со случайным именем, короче говоря тёмный лес, без пожирающих время эксперементов не обойтись, поэтому сразу решил использовать абсолютные пути...
Но если есть некая закономерность и постоянство во временных папках просвети пожалуйста и вопрос будет снят! :)
Разобрался я с временными папками в rar.sfx: первый архив разворачивается в %TEMP%\RarSFX0\, если первый не успел отработать, то второй распаковывается в %TEMP%\RarSFX1\, и так до RarSFX3, далее по кругу с перезаписью! Щас попробую инсталяхи переделать, глядишь прорвемся :)

Gozya
20-12-2006, 03:15
У меня в системнике встроеный кардридер, который устанавливает 4 съемных диска. В реале после установки винды WPI не запускается, а пишет, что неправильно указан путь (причем указан путь на съемный диск). Видимо при первом старте, винда определяет кардридер и устанавливает 3 диска и получается, что буквы изменились и WPI неправильно определяет путь к %CDROM%.
Ктонить знает как изменить алгоритм нахождения %CDROM%, чтоб избавится от этого глюка? Или это зависит не от WPI а конкретно от винды? Что делать незнаю.
у меня на диске папка WPI лежит в корне

ProkVS
20-12-2006, 07:51
Gozya
Попробуй в корень диска положить не папку WPI, а её содержимое!

DenchikK
20-12-2006, 09:06
Еще в новой версии обнаружил косяк: фонты не устанавливаются при
первом запуске винды!
И ещё спросить хотел - на одном из скриншотов на
соседних страницах было видно, что в окне, когда программы уже
устанавливаются, показываются и категории. Что то у себя я так и е
смог этого добится.

VelDmi
20-12-2006, 11:17
DenchikK
Вечером буду дома посмотрю.
ProkVSОтказался использовать временные папки после того как не нашёл способ указать путь к файлу распакованному в неё!
Ты не тем путем шагаешь :-)
Вместе с архивом упаковываешь свой setup.cmd, затем устанавливаешь в настройках sfx выполнить после распаковки setup.cmd.
После распаковки он выполнится, установит что тебе надо, затем винрар сам все удалит и завершит работу.
Если не разберешься пиши в ПМ, здесь это off.

GozyaВ реале после установки винды WPI не запускается
Каким образом ты запускаешь WPI? Из GuiRunOnce? Там и ищи косяк.
и получается, что буквы изменились и WPI неправильно определяет путь к %CDROM%.
Так как WPI еще не запустилась, то путь к %CDROM% не может определить та программа, которая ее запускает.

Diam0nd
20-12-2006, 11:52
Dicken
А как же... Я обошел проблему через reg файл.

ProkVS
20-12-2006, 12:22
VelDmi
Называется найдите 10 отличий
Вместе с архивом упаковываешь свой setup.cmd, затем устанавливаешь в настройках sfx выполнить после распаковки setup.cmd
Многие мои инсталяхи созданы по принципу самораспаковывающихся rar архивов с последующим запуском пакетника,
т.е. внутри архива идет инсталятор (msi, exe...) + необходимые файлы (key, cfg, ini...) + start.cmd (сценарий установки)
Ежу понятно что start.cmd запускается автоматом, на то он и sfx! А вот какой путь указывать к фалам архива в start.cmd (сценарий установки)?
Ответ нарыл эксперементальным путём: %TEMP%\RarSFX0\
Всё равно, не хорошо это, что WPI не умеет корректно отслеживать завершение rar sfx...

gora
20-12-2006, 12:55
ProkVS
Попробуйте использовать 7z SFX архив (степень сжатия выше чем у RARа):
Модифицированный модуль предоставляет широкие возможности для создания SFX архивов. Используя модуль, Вы можете:

Указывать желаемый путь распаковки содержимого архива
Выбирать между интерактивной, "тихой" и скрытой распаковкой
Контролировать внешний вид диалоговых окон и текста в них
Конфигурировать различные варианты установки запакованных приложений, впоследствии выбирая нужный сценарий ключом командной строки
Просто распаковать архив в желаемую папку
Запускать, после распаковки, последовательно несколько файлов (.exe, .msi, .reg и т.п.) и использовать его для установки приложений
Заменить, применяемые ранее для установки, .bat или .cmd файлы и исключить необходимость использования "StartX.exe", "msistub.exe" и подобных утилит
Создавать ярлыки к программам и назначать значки для этих ярлыков по своему усмотрению
Использовать архивы с разными методами сжатия (LZMA, Deflate, PPMd), которые предлагает архиватор 7-Zip
Поддерживать относительные пути
Удалять временную папку после установки
и многое другое... Живет он здесь (http://forum.oszone.net/showthread.php?t=51547).

VelDmi
20-12-2006, 16:06
ProkVSЕжу понятно что start.cmd запускается автоматом, на то он и sfx! А вот какой путь указывать к фалам архива в start.cmd (сценарий установки)?
Никакой. Так и пиши в батнике:
setup.exe /s
key.exe
или
%CD%\setup.exe /s
%CD%\key.exe

Gozya
21-12-2006, 01:58
VelDmi
ProkVS
Я запускаю WPI с помощью вот этого архивчика.
Его скачал на сайте WPI.
Подскажите как доработать скрипт чтоб правильно определялся %wpipath% ато он пытается запустить WPI.hta не с того диска

ProkVS
21-12-2006, 07:17
Gozya
Честно говоря сам не совсем понимаю как это работает - for /f "delims=: tokens=1" %%i in ("%~dp0") do set drive=%%i:
Поэтому пользуюсь старым проверенным способом, который ещё никогда не подводил:
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%i:\WPI.ico set CDROM=%%i:
WPI.ico это маркерный файл в корне диска, если у тебя папка WPI лежит в корне установочного диска Windows, то замени WPI.ico скажем на WIN51
Содержимое RunWPI.cmd будет выглядеть так:
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%i:\WIN51 set CDROM=%%i:
set wpipath=%CDROM%\wpi

SET KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx

REG ADD %KEY%\999 /V 1 /D "%wpipath%\WPI.hta" /f
Для проверки, запусти полученный RunWPI.cmd на рабочей системе (есессно диск с виндой должен быть в дисководе) и в реестре (HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\999\) посмотри какой прописался путь!

DenchikK
21-12-2006, 08:40
А у меня в версии 5.6 так и не получается определить просто букву
переменной %cdrom% ни через wpi.cmd ни через DiskPath='';
Всё некрасиво россыпью валяется в корневике на диске...

ProkVS
21-12-2006, 10:26
DenchikK
Положи в корень установочного диска файл например WPI.ico, проследи чтоб больше ни на одном диске не было в корне этого файла!
Напиши в wpi.cmd
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%i:\WPI.ico set CDROM=%%i:
cd %CDROM%
pause
exit
и запусти, в конце выполнения команда cd %CDROM% должна превратится в cd букваустановочногодиска:\
Если высветилась другая буква диска (не установочного) - идем в церковь (или мечеть) набираем ведро святой воды и выливаем себе на голову,
imho без нечистой силы тут не обошлось :)))

DenchikK
21-12-2006, 14:54
ProkVS
Да всё именно так у меня и работает, уже года 2 почти. До этой версии.
Да, запускаем этот cmd, да - видим - %cdrom% - это буква D:
echo Found CD-Rom as drive %CDROM%
Запускаем wpi.hta. Выбираем прогу:
cmd1[pn]=['%cdrom%\\Software\\Programs\\ApBackUp\\ApBackUp.exe'];
и всё! ошибка (читаем в логе):
cmd1 *** Неудача *** (возвращен код undefined): "D:\Software\WPI\Software\Programs\ApBackUp\ApBackUp.exe"
и переменная %CDROM% уже:
%CDROM%=D:\Software\WPI
Видать это не нечистая сила, а где то в процессе выполнения скрипта
переменная перебивается. И сдается мне - в файле core.js это
происходит!

ProkVS
21-12-2006, 15:15
DenchikK
А почему такой странный путь и где в нем папка WPI?
Насколько я понимаю если запускаешь WPI с отдельного диска - клади её внутренности в корень и путь к прогам будет %CDROM%\install\...!
На всякий случай попробуй в пути к программам указывать не %CDROM%, а %wpipath% и далее соответствуйщий путь к прогам от папки WPI!

DenchikK
21-12-2006, 15:43
У меня просто уже сложилось за 2 года структура и соответственно настройки все:
корневик:

i386
Software
Antivir
...
Programs
...
WPI
wpi.cmd
маркерные файлы

даже в версии 5.0 ещё все нормально работало, пока wpi не начал выеживаться. Всё замечательно - выляется всё на винте - а надо к кому то идти - на болвань - ничего не изменяя! Ляпота! И тут оказалось, разработчики WPI решили "помочь" пользователям. Блин. Как мне всё таки понравилась версия 5.6, но вернусь таки на версию 5.0 если это не решится. Мне не нужно россыпью файлы в корневике, так же не прёт в папке WPI пихать программы в Install. Сила привычки. Неужели в версии 5.6 WPI невозможно заставить возвращать только букву? Уж с путем я как то сам справлюсь, без "заботы" его разработчика.

В WPI 5.0 для получения и нахождения буквы cdrom использовался скрипт generate.js. В 5.6 он отсутствует.

ProkVS
21-12-2006, 16:21
DenchikK
Подожди! Рано сдаешься! Пока не найдется хорошего решения юзай:
%CDROM%\..\..\Software\Programs\ApBackUp\ApBackUp.exe

:)БУГАГАГ

DenchikK
21-12-2006, 16:38
ProkVS
Немножко не понял, если убрать двойные слеши, вернётся ProgramsApBackUpApBackUp.exe
Если изменить путь - то не хочеться.
А работает только в этом случае, что раздражает:
Audio\
Common\
Graphics\
I386\
Lang\
Manual\
Software\
Themes\
Tools\
WPIScripts\
WIN51
WIN51P
WPI.hta
wpi.ico
Autorun.inf
WIN51P.SP2

ProkVS
21-12-2006, 17:07
DenchikK
Да нет, это наверно ты немножко не понял :)!
Если WPI воспринимает %CDROM% как "D:\Software\WPI",
то логично было бы предположить, что если указать "%CDROM%\..\..\" мы получим желаемый диск D:\ в чистом виде!
соответственно полный путь к проге будет выглядеть так:
%CDROM%\..\..\Software\Programs\ApBackUp\ApBackUp.exe = D:\Software\Programs\ApBackUp\ApBackUp.exe
Открываем акелпадом config.js и автозаменой лупим: "%CDROM%\\" на "%CDROM%\\..\\..\\"
И щастье...

Обожаю такие корявые решения, так сказать на скорую руку :)
Потом конешно заглянет Sanja Alone, подскажет заменить какую-нить закорючку в *.js и всё заиграет!




© OSzone.net 2001-2012