PDA

Visualizza versione completa : Installazione files...


JeX76
04-05-2002, 15.36.55
Devo creare un file di installazione che copi, oltre ad alcuni miei files che devono essere inclusi nell file d'installazione, un file da un certo CD e lo rinomini.

Grazie

P8257 WebMaster
06-05-2002, 11.37.49
In che linguaggio vuoi farlo? e per quale s.o.?

Se non hai voglia di fartelo tu puoi sempre usare Install Shield .. che secondo me è il miglior tool per creare programmi setup anche perché si integra con Windows Installer

Bye :cool:

JeX76
07-05-2002, 15.23.50
Mi serve sotto Win98 pure un Batch MS-DOS va bene. Non sono pratico di lingusggi in genere, ho provato molti programmi per creare i setup ma non ho concluso molto.

Ciò che devo creare è un file zip self extractor che lancia un programma che copia i files dell'archivio (fin quì nessun problema) ed inoltre un file da uno specifico CDROM (ecco il vero problema) che deve essere rinominato. Diciamo che deve essere una cosa simile all'installazione di un driver di periferica che una volta copiati i file dei driver, dal CD o Archivio scaricato del produttore, copia alcuni componenti dal cd originale di windows.

Grazie

P8257 WebMaster
08-05-2002, 08.46.14
In questo caso allora, penso che un semplice batch possa andarti bene. L'emulazione DOS di Win98 ti fornisce tutti gli strumenti non solo per copiare e rinominare i file ma anche per contollare se essi esistono.

Il file batch seguente prende 2 file (che ho chiamato convenzionalmente A e PIPPO ... perché ho poca fantasia .. :D li copia in c: e rinomina il secondo a.txt.

---
@ECHO OFF
ECHO Preparazione dell'installazione in corso...
IF NOT EXIST a GOTO Errore
IF NOT EXIST pippo.txt GOTO Errore

COPY pippo.txt C:\ > nul
COPY a C:\ > nul
CD\
REN a a.txt
ECHO Installazione eseguita correttamente.
GOTO End

:Errore
ECHO Errore: File di installazione mancanti

GOTO End

:End
---

JeX76
08-05-2002, 23.13.16
Prima di tutto grazie per l'aiuto che mi stai dando. In secondo luogo ecco quello che io ho capito dal precedent 3d:

------------------------------------------------------------------
@ECHO OFF
ECHO Preparazione dell'installazione in corso...
IF NOT EXIST thememd.ini GOTO Errore
IF NOT EXIST e:\thememd.mix GOTO Errore

COPY thememd.ini C:\westwood\RA2 > nul
COPY e:\thememd.mix C:\westwood\RA2 > nul
CD C:\westwood\RA2\
REN thememd.mix ecache10.mix
ECHO Installazione eseguita correttamente.
GOTO End

:Errore
ECHO Errore: File di installazione mancanti

GOTO End

:End
------------------------------------------------------------------

Allora:
Dal web un generico utente scarica un selfextractor che contiene i files thememd.ini e setup.bat (come sopra). Aprendolo questo scompatta i files in c:\windows\temp ed esegue setup.bat. Quindi viene copiato thememd.ini in C:\westwood\RA2 e thememd.mix dal CD-ROM originale del gioco e rinominato come ecache10.mix.

Ora scusa se ti chiedo quest'ultima cosa, ma se l'utente che lo scarica non ha come me 2 partizioni e quindi il suo CDROM non è e: ma d: o potrebbe averne 2 e quindi inserire il cd in f: o g:, non c'è un modo per indicare il CD specifico del gioco invece dell'unità o un qualcosa che faccia cercare il file in tutte le unità? Questa cosa funziona anche su ME, 2000 ed XP?

Grazie per la pazienza ^_^

P8257 WebMaster
09-05-2002, 08.36.24
xNessun problema

Fare ciò che chiedi con una procedura batch è un po' laborioso ma fattibilissimo.
Nell'emulazione DOS dei sistemi operativi a core 9x esisteva un comandino molto semplice e carino denominato CHOICE, il file che lo implementa è choice.com (fai una ricerca sul tuo hd, se non lo trovi te lo posso mandare) che analizza un input da tastiera che può essere sia una risposta come S o N ma anche una qualsiasi altra lettera e ritorna un codice errorlevel attraverso il quale puoi valutare le scelte effettuate dall'utente.

Attraverso questa procedura puoi chiedere direttamente all'utente quale unità di origine e quale unità di destinazione utilizzare, tutto in un unico file batch, semplicemente valutando la costante errorlevel.

E' un po' laborioso ma il risultato corrisponde a ciò che cheidi.

Fammi sapere se hai bisogno di aiuto nell'implementare questa procedura via batch.

Bye :cool:

JeX76
09-05-2002, 15.08.10
ok sul mio c'è, già che ci siamo io non ricordo + come si fa a vedere la sintassi dei comandi msdos, ti spiego, io usavo l'amiga quando sul pc girava msdos quindi non lo conosco proprio bene, e sull'amiga se dopo un comando mettevi ? mostrava la sintassi del comando stesso, mi sbaglierò ma mi sembra che anche col dos ci fosse una cosa simile.

P8257 WebMaster
10-05-2002, 08.30.28
Per il dos si utilizza: nomecomando /?

Nel caso specifico di choice, l'errorlevel viene settato in ordine crescente a seconda delle opzioni specificate.

Ad esempio, se l'utente ha la possibilità di scegliere tra le lettere E, F o G per esempio, E avrà un valore di 1, F di 2 e G di 3 .. e così via.

Con la sintassi IF ERRORLEVEL n GOTO etichetta

puoi ridirezionare il controllo nel file batch a seconda delle scelte dell'utente.

Bye :cool:

JeX76
12-05-2002, 18.01.57
Sto avendo un problema con le scelte, in pratica lo script va avanti ignorando le scelte fatte dall'utente mi sai dire dove ho sbagliato?

Grazie

@ECHO OFF
ECHO Yuri's Revenge Unofficial Music Patch v1.0
CHOICE Continuare?
IF ERRORLEVEL 1 GOTO Installazione
IF ERRORLEVEL 2 GOTO End

:Installazione
ECHO Inserire il CD-ROM di Red Alert 2 e specificare in quale unita' e' stato inserito

CHOICE /Cdef
IF ERRORLEVEL 1 GOTO DriveD
IF ERRORLEVEL 2 GOTO DriveE
IF ERRORLEVEL 3 GOTO DriveF

:DriveD
IF NOT EXIST c:\windows\desktop\thememd.ini GOTO Errore
IF NOT EXIST d:\theme.mix GOTO Errore

COPY c:\windows\desktop\thememd.ini C:\westwood\RA2 > nul
COPY d:\theme.mix C:\westwood\RA2 > nul
CD C:\westwood\RA2\
REN theme.mix ecache10.mix
ECHO Installazione eseguita correttamente.
GOTO End

:DriveE
IF NOT EXIST c:\windows\desktop\thememd.ini GOTO Errore
IF NOT EXIST e:\theme.mix GOTO Errore

COPY c:\windows\desktop\thememd.ini C:\westwood\RA2 > nul
COPY e:\theme.mix C:\westwood\RA2 > nul
CD C:\westwood\RA2\
REN theme.mix ecache10.mix
ECHO Installazione eseguita correttamente.
GOTO End

:DriveF
IF NOT EXIST c:\windows\desktop\thememd.ini GOTO Errore
IF NOT EXIST f:\theme.mix GOTO Errore

COPY c:\windows\desktop\thememd.ini C:\westwood\RA2 > nul
COPY f:\theme.mix C:\westwood\RA2 > nul
CD C:\westwood\RA2\
REN theme.mix ecache10.mix
ECHO Installazione eseguita correttamente.
GOTO End

:Errore
ECHO Errore: File di installazione mancanti

GOTO End

:End