PDA

Показать полную графическую версию : .: Файлы конфигурации 7z SFX. Помощь и советы :.


Страниц : 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

gora
17-08-2012, 10:02
Есть такая возможность »
Нет. Либо делать "матрешку", либо использовать рекурсивный запуск SFX (если архив небольшой). Пример рекурсивного запуска можно посмотреть в установщике "Кнопки..."

бУРов
03-09-2012, 14:15
Мне надо в автозагрузку добавить шорткат, чтобы запускал программу во весь экран. Как я понял, этого нет. Может быть какое решение имеется?

specialist
03-09-2012, 14:33
бУРов, например с помощью nircmd
nircmd shortcut "f:\Program Files" "c:\temp\MyShortcuts" "Program Files Folder" "" "" "" "max"

shortcut [filename] [folder] [shortcut title] {arguments} {icon file} {icon resource number} {ShowCmd} {Start In Folder} {Hot Key}

скачайте nircmd и изучайте возможности с помощью мануала к нему

gora
03-09-2012, 14:48
какое решение имеется? »
Без сторонних утилит, с помощью vbs скрипта, например:
set WSS = WScript.CreateObject("WScript.Shell")
strDesktop = WSS.SpecialFolders("Desktop")
set oShellLink = WSS.CreateShortcut(strDesktop & "\Shortcut Script.lnk")
oShellLink.TargetPath = WScript.ScriptFullName
oShellLink.WindowStyle = 3
oShellLink.Hotkey = "Ctrl+Alt+e"
oShellLink.IconLocation = "notepad.exe, 0"
oShellLink.Description = "Shortcut Script"
oShellLink.WorkingDirectory = strDesktop
oShellLink.Save

бУРов
03-09-2012, 14:49
с помощью nircmd »Да, вполне приемлемое решение )))

3december
03-09-2012, 20:02
Здравствуйте, может кто-нибудь помочь в создании SFX архива? Мне нужно, чтобы перед распаковкой он удалил файлы в выбранной пользователем директории для распаковки. Файлов для удаленим много: порядка 17 тыс. В программировании я не силен, может кто подсказать как это сделать?

бУРов
03-09-2012, 20:08
RunProgram = "REGEDIT /S reg.reg" »А у меня такое использование
вызывает диалог

бУРов
03-09-2012, 20:33
Delete=%%T\\reg.reg" »Вот что-то нигде не могу найти, что это -- "%%T"?
Это типа буква диска?

jameszero
03-09-2012, 20:44
3december
Перед распаковкой архива такого функционала не предусмотрено, можно выполнить удаление сразу после распаковки во временную папку, а затем установить программу или, что там вам требуется. Это указано в первом сообщении темы (FAQ).

Технически так:
Удалить все файлы в директории %ProgramFiles%\ToDelete
;!@Install@!UTF-8!
RunProgram="hidcon:cmd /c PushD \"%ProgramFiles%\\ToDelete\"& del /S /Q *.*& PopD"
;!@InstallEnd@!

Возможно подойдёт вариант удалить всю директорию %ProgramFiles%\ToDelete
;!@Install@!UTF-8!
RunProgram="hidcon:cmd /c If Exist \"%ProgramFiles%\\ToDelete\" rd /S /Q \"%ProgramFiles%\\ToDelete\""
;!@InstallEnd@!

бУРов
%%T - полный путь распаковки
Настоятельно рекомендую к ознакомлению ссылку - http://7zsfx.info

бУРов
03-09-2012, 20:51
Нашел, спасибо

бУРов
03-09-2012, 21:08
Можно ли как-то менять значения реестра?
Использование "regedit /s reg.reg" вызывает диалог.

Менять UAC не нужно. Хотя... Вроде его из командной строки можно отключить. Уже кое что.

И вот еще нашел. REG.EXE

specialist
03-09-2012, 21:37
бУРов,
- в windows 7 с включенным UAC запускать запускать полученный sfx EXE правой кнопкой от имени администратора
или
- добавить в файл конфигурации к sfx модулю строчку
MiscFlags="4"
для автоматизации вызова диалога повышения привилегий при запуске sfx EXE
или
- как вариант открыть ваш готовый exe или *.cfg файл для него перед слиянием например в restorator и в секции манифестов в строке
Код:
<requestedPrivileges><requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel></requestedPrivileges>
прописать вместо asInvoker
фразу
requireAdministrator
для автоматизации вызова диалога повышения привилегий при запуске sfx EXE

по результатам будут все команды после запуска файла выполняться от администратора и запросов на подтверждение не будет

3december
03-09-2012, 21:44
jameszero
вариант со временной папкой не подходит, так как файлов на 5 гигабайт

А можно сделать так: SFX архив распаковывает один файл в директорию, которую пользователь выбрал, выполняет этот файл, а потом распаковывает все остальное?

бУРов
03-09-2012, 22:06
Два 1-х пункта не помогают. Вопросы-диалоги те же и даже если жму "да", в реестре изменений нет.

windows 7 с включенным UAC запускать запускать полученный sfx EXE правой кнопкой от имени администратор »

У меня почему-то в реестре ничего не поменялось ((

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"AutoAdminLogon"="1"

А если через кнопку пуск "REGEDIT /S ", справшивает, добалять ли в реестр

ruslan910
04-09-2012, 07:23
Господа помогите!
Shortcut="Du,{C:\\Konsultant\\pn.exe},{/APP "CONSULTANT" /PNI "3z11omhz"},{},{Консультант},{konsultant},{C:\\Konsultant},{%APPDATA%\\ICAClient\\8w9u1x86.ICO},{}"
7zip ругается на ковычки "CONSULTANT" и "3z11omhz" , но они должны присутствовать в ярлыке, как быть? подскажите.
заранее спасибо

jameszero
04-09-2012, 07:46
3december
А можно сделать так: SFX архив распаковывает один файл в директорию, которую пользователь выбрал, выполняет этот файл, а потом распаковывает все остальное? »

Можете сделать два архива. Один небольшой, который будет моментально распаковываться, выполнять действия и запускать второй, основной архив.

Частичная распаковка одного архива невозможна (FAQ в первом сообщении, пункт 2)

gora
04-09-2012, 08:18
ругается на ковычки »
1 Кавычки нужно экранировать обратным слешем:
...{/APP \"CONSULTANT\" /PNI \"3z11omhz\"}...
...{%APPDATA%\\ICAClient\\8w9u1x86.ICO}..." »
2 Системные переменные не раскрываются в параметрах ярлыка.Только переменные среды модуля и переменные модуля, а также переменные, определяемые пользователем в параметрах 'SetEnvironment', разбираются и подставляются (будут подставлены ЗНАЧЕНИЯ этих переменных) во всех параметрах команды 'Shortcut'.

Amigos
04-09-2012, 08:52
Системные переменные не раскрываются в параметрах ярлыка. »дык вроде и не нужно, оно именно так и пропишется в ярлыке, в виде переменной, и такой ярлык вроде вполне рабочий
http://i2.imageban.ru/thumbs/2012.09.04/f560271f963c63cf2702e26f3bc61be8.png (http://imageban.ru/show/2012/09/04/f560271f963c63cf2702e26f3bc61be8/png)

gora
04-09-2012, 09:53
дык вроде и не нужно »
Я не знаю, что конкретно задумал пользователь. Переменную в ярлыке будет обрабатывать ОС и он будет работоспособным, если в нем нет ошибок, например таких:...{%АPPDATA%\\ICAClient\\8w9u1x86.ICO}..." В "правильном" варианте использования Shortcut SetEnvironment="AD=%АPPDATA%"
Shortcut="...{%AD%\\ICAClient\\8w9u1x86.ICO}..." мы сразу увидим в свойствах ярлыка отсутствие "правильного" абсолютного пути, т.к., переменной %АPPDATA% не существует и она не раскроется.

ruslan910
04-09-2012, 10:47
Спасибо за обратный слэш, помогло :) , а вот
SetEnvironment="AD=%АPPDATA%"
Shortcut="...{%AD%\\ICAClient\\8w9u1x86.ICO}..."
не сработало, иконку не нашла винда (win xp sp3)




© OSzone.net 2001-2012