Preparare e provare l'autorun dei CD


Home Page | Commenti | Articoli | Faq | Documenti | Ricerca | Archivio | Storie dalla Sala Macchine | Contribuire | Login/Register
A cura di Davide Bianchi Il CD che si esegue da solo, cioe' dotato di Autorun, ha un'aria sempre molto professionale, ma per provare l'autorun bisogna prima farlo e poi fare il CD... ma si puo' anche fare in modo diverso. Vediamo come.

L'Autorun del CD

Con Windows '95 stato introdotto il concetto di Autorun, in sostanza ogni volta che il cassetto del CD viene chiuso, Windows viene notificato che (forse) un CD e' stato inserito, Windows legge il CD e, se e' definito un Autorun, lo esegue.

Questo e' la gioia ed il dolore piu' o meno di tutti, gioia perche' per lo sviluppatore di software od il distributore di cataloghi su CD e' molto facile inserire un meccanismo di 'autopartenza' a prova di deficiente, cosi' si evita che l'idraulico scemo domandi al piazzista di turno "si ma il catalogo che mi ha dato come devo installarlo sul picci'?", la risposta potrebbe essere: ficcalo dentro e guarda.

Per l'utente qualche volta e' una gioia, qualche altra volta un po' meno, nel senso che a volte non ve ne frega niente di far partire il programma, state facendo un'altra cosa.

Per lo sviluppatore pero' i problemi sono:

  1. Scrivere l'autorun in modo che avvii il programma/catalogo
  2. Provarlo
Quest'ultimo poi e' particolarmente gravoso perche' se non si fa' il CD l'autorun non lo si prova, se si fa' il CD e poi l'autorun non funziona si butta via il CD...

Nel corso di questa FAQ si vedra':

  1. come fare l'autorun
  2. come provare l'autorun usando un floppy disk (!)
In effetti (per quanto sembri strano), Windows ha tutto predisposto per utilizzare l'autorun su qualunque supporto, purche' rimovibile, quindi anche un floppy potrebbe avere l'autorun, solo che per ovvi motivi, il supporto e' direttamente attivabile solo per i CD.

Fare l'autorun

L'autorun sostanzialmente e' solo un file di testo (quindi lo si puo' produrre anche con un volgarissimo Notepad), denominato AUTORUN.INF, posto nella directory radice (\) del CD (o del floppy) e contenente alcuni comandi "chiave".

Windows verifica se il file esiste dove si aspetta di trovarlo e se contiene quei comandi, se si, e' tutto felice e li esegue, se no, non fa' niente.

Un tipico Autorun e' composto cosi':


[autorun]
open=nomefile.exe
icon=nomicona.ico
Windows avvia automaticamente il programma o il file specificato come open=nomefile, windows cerca il file indicato relativamente alla directory dove si trova l'autorun, quindi rispetto alla directory radice del CD.

L'attributo icon=nomefile.ico consente di specificare l'icona da attribuire al CD quando e' inserito e Windows lo visualizza nella Gestione Risorse. E' anche possibile indicare un file .BMP o .EXE come 'icona', se il file contiene piu' di una icona occorre specificare quale utilizzare aggiungendo il numero dell'icona dopo il nome del file separato da una virgola (la prima icona e' la numero 0).

Per esempio:


[autorun]
open=\files\bin\setup.exe
icon=\files\resources\icons.dll,2
Indica di avviare il file 'setup.exe' posto in \files\bin, ed utilizza come icona la 3a (la prima e' 0) icona del file \files\resources\icons.dll.

Aggiungere opzioni al CD

E' possibile specificare diverse 'funzioni' da aggiungere al menu' che si attiva con il tasto destro del mouse sul CD. Per esempio potrebbe essere interessante avere 'a portata di mouse' i comandi per visualizzare il 'readme' del CD, o per eseguire l'installazione di una utility o cose cosi'.

Per aggiungere una funzione al tasto destro occorre aggiungere due righe all'autorun:


shell\verb\command=filename.exe
shell\verb=Menu Item Name
Cioe': shell\verb\command specifica quale programma o comando eseguire, mentre shell\verb indica come chiamare il comando da mostrare nel menu'.

Per esempio le linee seguenti aggiungono il comando 'Visualizza Readme' nel menu', collegando la voce al file README.TXT aperto con Notepad:


shell\verb\command=notepad.exe readme.txt
shell\verb=Visualizza Readme
Normalmente il comando di default per un CD dotato di autorun e' Autoplay, e' possibile modificare questa impostazione, facendo quindi eseguire al doppio click quello che vogliamo noi, aggiungendo il comando


shell=verb
Dove verb indica il comando che vogliamo eseguire (nell'esempio precedente era 'Visualizza Readme').

Provare l'autorun sui floppy

Come abbiamo visto, la realizzazione di un Autorun non e' una cosa poi cosi' complicata, ma il test dell'autorun lo e', perche' il CD se viene male (cioe' se l'autorun non funziona) tocca buttarlo via.

In realta' pero', l'autorun e' disponibile su tutti i media, compresi i floppy, solo che per ovvie ragioni, e' attivabile solo a comando solo sui CD.
Attivare l'autorun sui floppy consente di testare le operazioni di run in modo molto semplice e riutilizzabile.

Per attivare l'autorun occorre utilizzare l'editor del registro di configurazione (Regedit).

Attenzione: la modifica del registro di configurazione e' una operazione piuttosto delicata, e' consigliabile effettuare un backup prima di ogni modifica al registro.

Aperto il Regedit, andiamo a modificare la chiave


HKEY_CURRENT_USER\ 
   Software\
      Microsoft\
         Windows\
            CurrentVersion\
               Policies\
                  Explorer\
                     NoDriveTypeAutoRun
la chiave e' di tipo binario, e' composta da 4 byte, il primo e' un bitmask che identifica quali drive devono eseguire l'autorun, gli altri 3 byte dovrebbero essere a 0.

Il bitmask e' specificato in questo modo:

Tipo Bit
DRIVE_UNKNOWN 0
DRIVE_NO_ROOT_DIR 1
DRIVE_REMOVABLE 2
DRIVE_FIXED 3
DRIVE_REMOTE 4
DRIVE_CDROM 5
DRIVE_RAMDISK 6
Se un bit e' settato, il drive corrispondente non utilizza l'autorun, di solito il valore di questo byte e' 223 (DF hex), che significa che sono settati i bit 0,2,4 e 7, cioe' i drive di tipo UNKNOW, REMOVABLE e REMOTE non utilizzeranno l'autorun (il bit 7 non e' documentato, il che mi fa pensare ad un "riservato per usi futuri").

Quello che dobbiamo fare noi e' de-settare il bit 2 per attivare l'autorn sui dischi di tipo 'rimovibile', quindi sui floppy.

Un rapido calcolo ci dice che il bit 2 valie 4, quindi 223-4=219 (DB hex). Impostiamo quindi a DB il valore del byte per attivare il floppy.

A questo punto dovremo riavvare la macchina perche' la modifica abbia effetto.

Attenzione: molti floppy drive non segnalano l'inserimento o la rimozione dei dischetti, quindi la semplice attivazione della features non e' sufficiente, perche' il nostro autorun parta, dobbiamo anche informare Windows che il dischetto e' dentro.
Per fare questo e' sufficiente aprire le "Risorse del Computer" e premere F5 per aggioranre la visualizzazione.

L'HTML come autorun

La maggioranza delle volte che qualcuno tira fuori l'autorun e' per far visualizzare una pagina HTML come "copertina" di un CD.

Questo si puo' fare, ma non e' molto consigliabile. Principalmente perche' funziona solo se l'utente ha un browser "predefinito" installato e configurato, e, checche' voi ne pensiate, esiste un sacco di gente che non ce lo ha.

La maggior parte delle volte poi, non e' possibile mettere come "open" la pagina HTML, il browser non verra' avviato.

La cosa migliore da fare e' sempre quella di utilizzare un programma eseguibile (.exe) come argomento dell'autorun, se vogliamo avviare una pagina HTML utilizziamo


[autorun]
open=start pagina.htm
La chiamata a start funziona pero' solo nel caso in cui il browser sia configurato correttamente sulla macchina, in caso contrario l'utente vedra' una alquanto curiosa descrizione di errore.


I commenti sono aggiunti quando e soprattutto se ho il tempo di guardarli e dopo aver eliminato le cagate, spam, tentativi di phishing et similia. Quindi non trattenete il respiro.

1 messaggio this document does not accept new posts
Eladamri Di Eladamri - postato il 09/12/2010 17:25

Eventualmente, si puo' usare anche una "chiavetta" USB, al posto del floppy, e' piu' rapido, ti evita di modificare il registro e non sei limitato a 1,44 MB.

--
Eladamri


Precedente Successivo


Davide Bianchi, lavora come Unix/Linux System Administrator presso una societa' di "sicurezza informatica" (aka: $networkgestapo) di Haarlem. Contatti: mail: davide AT onlyforfun.net , Jabber: davideyeahsure AT gmail.com,


Volete contribuire? Leggete come!.
 
 

Il presente sito e' frutto del sudore della mia fronte (e delle mie dita), se siete interessati a ripubblicare uno degli articoli, documenti o qualunque altra cosa presente in questo sito per cortesia datemene comunicazione (o all'autore dell'articolo se non sono io), cosi' il giorno che faccio delle aggiunte potro' avvisarvi e magari mandarvi il testo aggiornato.


Questo sito era composto con VIM, ora e' composto con VIM ed il famosissimo CMS FdT.

Questo sito non e' ottimizzato per la visione con nessun browser particolare, ne' richiede l'uso di font particolari o risoluzioni speciali. Siete liberi di vederlo come vi pare e piace, o come disse qualcuno: "Finalmente uno dei POCHI siti che ancora funzionano con IE5 dentro Windows 3.1".

Web Interoperability Pleadge Support This Project
Powered By Gort