7zip - Crea un archivio autoestraente (sfx) con il percorso di estrazione specificato


15

Ciao esperti SuperUser,

Grazie per il vostro aiuto in anticipo. Sto cercando di ottenere l'archivio SFX 7zip per creare un eseguibile. Sono in grado di ottenere l'eseguibile. Ma quando lo eseguo, fornisce il percorso di download per Extract to:. Vorrei cambiare di %AppData%\Roamingdefault. La seguente schermata darà un'idea di ciò che sto cercando di fare.

7zip settings

Estrai in: finestra di dialogo

Non ci sono setup.exe o altro all'interno dell'archivio, ha solo pochi file che devono andare nella Roamingcartella. Questo è per molti dei nostri utenti, che possono ottenere questi aggiornamenti senza che specificino un percorso. (È sempre facile quando gli utenti non devono specificare un percorso, altrimenti è la mia esperienza che gli utenti possono scegliere percorsi più insoliti !!)

Grazie.

Aggiornare

Ecco cosa ho provato finora. il contenuto del mio file di configurazione è

;!@Install@!UTF-8!
InstallPath="%AppData%\\Roaming\\Notepad++"
;!@InstallEnd@!

Questa è la chiamata da linea di comando.

copy /b 7zS.sfx + config.txt + Installer.7z myinstaller.exe

Sfortunatamente non funziona . Dà il seguente percorso. Dovrebbe essere %AppData%\\Roaming\\Notepad++.

[Estrai percorso]


Questa opzione è disponibile con WinRAR ma non è a conoscenza di 7-zip.
Non fare il root qui per favore ...

Risposte:


7

Prova 7z SFX Builder , è gratuito, supporta i parametri della riga di comando e puoi anche specificare il percorso di estrazione nella scheda principale della GUI :

Scheda principale


omegastripes, funziona benissimo. Grazie. Ha un'incredibile quantità di opzioni. Molte grazie.
Gifcrazy,

McAfee elimina l'exe dopo l'installazione a causa di un cavallo di Troia ...
Lieven Cardoen,

8

Vorrei cambiare il percorso di estrazione per %AppData%\Roamingimpostazione predefinita.

Devi scaricare un "modulo modificato" da 7z SFX Builder (sourceforge).

Controlla i collegamenti a sinistra per la documentazione (nota questi collegamenti e il testo sotto è da https://web.archive.org/ )

Nel tuo file di configurazione:

InstallPath="%AppData%\Roaming"

Parametri del file di configurazione

InstallPath = "path_to_extract"

Imposta il percorso di estrazione. La cartella di estrazione non verrà eliminata dopo l'estrazione.

Se il InstallPathvalore non è presente nel file di configurazione o il percorso è stato eliminato dalla finestra di dialogo di estrazione interattiva, l'archivio verrà estratto in una cartella temporanea. Questa cartella temporanea verrà eliminata dopo l'estrazione e l'esecuzione di tutti i comandi.

Le variabili di ambiente sono consentite (ad eccezione di %%Te le variabili definite in SetEnvironment, se %%Tutilizzate in ognuna di esse). È necessario utilizzare le doppie barre rovesciate nei percorsi. Per esempio:

InstallPath="C:\\Windows\\system32\\test"

o

InstallPath="%PROGRAMFILES%\\test"

Sono consentiti percorsi relativi. La cartella corrente è quella da cui è stato eseguito il programma che avvia l'archivio SFX. Per esempio,

InstallPath="test"

crea una cartella con il nome di "test" nella cartella da cui è stato eseguito il programma che avvia l'archivio SFX. Tutti i file verranno estratti nella cartella "test". D'altra parte,

InstallPath="."

estrae il contenuto dell'archivio nella cartella da cui è stato eseguito il programma che avvia l'archivio SFX. Anche,

InstallPath="%%S"

estrae il contenuto dell'archivio nella cartella in cui si trova SFX.

Se tutto ciò che serve è quello di estrarre il contenuto dell'archivio in una determinata cartella, è necessario specificare un valore per InstallPathnel file di configurazione.

In questo caso non è necessario specificare RunProgramo ExecuteFilenel file di configurazione. AutoInstallo AutoInstallXpuò essere specificato nel file di configurazione, ma non deve essere invocato tramite la riga di comando o con il tasto [SHIFT].

Se si specifica RunProgramo ExecuteFileo si richiama AutoInstalle AutoInstallX, l'eseguibile specificato verrà avviato dopo l'estrazione.

Parametri del file di configurazione di origine


Grazie David. Ma puoi dirmi come usare il file di configurazione?
Gifcrazy

@Cricrazy Consulta le informazioni generali sul modulo modificato che devi scaricare e controlla i collegamenti a sinistra. Risposta aggiornata
DavidPostill

Questa impostazione di configurazione a 7 zip InstallPathè proprio quello che sto cercando. Al momento devo creare un file batch per copiare i file dalla cartella di estrazione temporanea alla cartella del runtime della nostra applicazione: ;!@Install@!UTF-8! Title="Local Manager" InstallPath="C:\kiosk\update" RunProgram="7zbootstrap.bat" ;!@InstallEnd@! @ECHO OFF REM 7zbootstrap.bat SETLOCAL SET update=C:\Kiosk\update XCOPY *.* %update%\ /S /E /I /F /Y CD %update% ECHO LAUNCHING AUTOUPDATE.BAT SCRIPT TIMEOUT /T 5 /NOBREAK autoUpdate.bat Tuttavia, il collegamento non funziona più.
papertape,

Impossibile ottenere il mini-markdown per formattare correttamente il blocco di codice. Si prega di modificare se si sa come. Grazie.
papertape,


0

Usa solo -y -o<PathToExtract>:Setup.exe -y -oc:\abc


2
Puoi fare un esempio? che cos'è eg e -oc?
Gifcrazy

1
"eg" sta per "expempli gratia", che in pratica significa "ad esempio". È comunemente usato per indicare un esempio, proprio come da lei richiesto. La risposta è ancora priva di spiegazioni e potrebbe utilizzare la formattazione, ma include un esempio completo.
music2myear

Se riesci a elaborare il comando? Dovresti sempre dare una panoramica di ciò che i comandi faranno, poiché l'utente dall'altra parte sarà diffidente nei confronti dei comandi con funzioni che non conoscono.
Service Manager,

I parametri della riga di comando vengono passati all'Exe contenuto.
Kazark
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.