Classe: XFolder
Mentre qualsiasi oggetto pu• essere posto nella cartella di configurazione, l'uso degli oggetti programma Š raccomandato per lanciare programmi da menu contestuali. Si intende qui "veri" oggetti programma, in contrasto con le copie collegate dei programmi esistenti.

La ragione Š la seguente: mentre XFolder lancia un oggetto programma dalle cartelle di configurazione (selezionato dalla corrispondente voce di un menu contestuale), pu• eseguire su di esso alcuni utili trucchi.

Eccone l'elenco:

  1. Se la directory di avvio dell'oggetto programma Š vuota, XFolder avvier… il programma all'interno della cartella il cui menu contestuale si Š usato. E' cosŤ possibile lanciare lo stesso programma da tutti i menu contestuali delle cartelle, ogni volta con una diversa directory di avvio (di volta in volta la directory della cartella il cui menu contestuale Š stato usato).

    Consideriamo ancora la configurazione predefinita: i quattro oggetti "linee di comando" hanno directory di avvio vuote. Questo Š il motivo per cui Š possibile lanciare delle richieste comandi "nella" cartella della quale si Š usato il menu contestuale.

    Se si desidera cambiare questo comportamento basta specificare una directory di avvio nell'oggetto programma (per es. "C:\"), e XFolder lascer… le cose come stanno.

  2. Se la lista dei parametri dell'oggetto programma non contiene il segno "%", la directory della cartella usata verr… passata al programma come parametro.

    Questo trucco Š sfruttato dalla voce di menu "Netscape (DDE)" della configurazione di default: Š in questo modo che Netscape pu• mostrare il contenuto della cartella da cui Š stato chiamato.

    La funzione Š interamente disabilitabile dall'oggetto Impostazioni &xwp;.

    Volendo invece disabilitare questa funzione per una sola voce di menu (non tutti i programmi possono gestire una directory come parametro), si aggiunga un segno "%" alla lista "Parametri" dell'oggetto programma relativo ed XFolder non passer… il parametro addizionale. Questo Š per esempio il caso delle richieste comandi presenti nella configurazione predefinita.

    Esempi: ponendo soltanto "%" nella lista dei parametri, nessun parametro verr… passato; mettendo "text.txt %" nella medesima lista, il nome "text.txt" verr… passato, senza il nome della cartella.

    Mi rendo conto di come questo meccanismo di configurazione non sia intuitivo, ma Š stato implementato per compatibilit… con il comportamento della WPS in caso di chiamata dei menu contestuali aggiunti dalla pagina "Menu" del blocco appunti impostazioni. Ho poi scoperto che il meccanismo funziona anche con Netscape, del che non mi sono certo dispiaciuto.

  3. E' anche possibile aggiungere il contenuto degli Appunti all'elenco dei parametri, semplicemente specificando "%**C". Questa stringa funziona in qualunque punto del campo parametri ma Š sensibile a maiuscolo e minuscolo: "%**c" (in caratteri minuscoli) NON funziona.

    Esempio: Percorso e nome file = "e.exe", parametri = "%**C", avvia l'editor di sistema interpretando il contenuto degli Appunti come nome file.

    Nota: il contenuto degli Appunti viene troncato in modo da non superare la lunghezza massima consentita per l'elenco parametri. In &os2; il percorso massimo consentito Š lungo 260 caratteri. Questa limitazione evita di passare erroneamente al programma, nel peggiore dei casi, 64 K.

  4. Se il nome del programma contiene un carattere "~" (probabilmente inserito per aggiungere una scorciatoia da tastiera, come descritto nella pagina precedente), XFolder lo eliminer… durante l'avvio del programma. Tale comportamento Š modificabile dalle Impostazioni &xwp;, dove sono anche riportate ulteriori informazioni sull'argomento.
  5. A partire dalla ver. 0.51 si pu• inserire nei menu dei separatori specificando "---" (esattamente tre trattini) come nome dell'oggetto programma (un separatore Š una linea orizzontale per separare otticamente gruppi diversi di voci di menu). XFolder ignorer… quanto contenuto nelle impostazioni dell'oggetto (nome dell'eseguibile, parametri ecc.) e si limiter… ad inserire nel menu un separatore. Questo meccanismo funziona tanto nel menu contestuale principale quanto nei sottomenu.

    Suggerimento se si usa l'ottimo programma WPTOOLS di Henk Kelder, si inserisca il nome di un qualunque eseguibile valido anche in questi oggetti separatori, altrimenti CHECKINI segnaler… l'oggetto come non valido. Qualunque eseguibile si indichi, XFolder si limiter… ad inserire il separatore di menu.

XFolder implementa le funzioni dalla 1 alla 4 cambiando realmente le impostazioni dell'oggetto programma per una frazione di secondo: le impostazioni vengono modificate, l'oggetto programma viene aperto, quindi le impostazioni sono ripristinate al loro valore originario.

Si tenga presente che XFolder esegue quanto descritto sopra solo sui "veri" oggetti programmi nelle cartelle di configurazione, non su copie collegate che puntano ad altri oggetti. Non intendo implementare questo comportamento anche per le copie collegate dato che non voglio modificare oggetti che si trovano nella scrivania dell'utente, al di fuori della cartella di configurazione.

E' perci• necessario mettere nelle cartelle configurazione delle copie degli oggetti programma; non si possono usare copie collegate, che sono sŤ aperte, ma senza che le loro impostazioni siano cambiate.

Si vedano le "Domande pi— comuni" per alcuni consigli su come creare oggetti programma.