La griglia del progetto
La griglia mostra una riga per ogni target del progetto, con una colonna per ogni impostazione che scegli. Usala per i progetti con molti target e per le modifiche che riguardano più target.



La griglia con due colonne di impostazioni aggiunte e il pannello delle proprietà aperto
Cambiare vista
Per cambiare vista usa i pulsanti Diagramma | Griglia in alto a destra, Visualizza > Diagramma / Visualizza > Griglia (Ctrl+Shift+C / Ctrl+Shift+G, Cmd+Shift+C / Cmd+Shift+G su macOS) oppure Vista: Diagramma / Vista: Griglia nella tavolozza comandi. Il canvas è la vista predefinita. Babel Desktop ricorda la vista di ogni progetto su questo computer; cambiarla non modifica il file di progetto né lo contrassegna come modificato.
Selezionare una riga equivale a fare clic sul suo nodo, e il pannello delle proprietà funziona allo stesso modo nelle due viste. Nella griglia, la barra degli strumenti aggiunge Risultati esecuzione accanto al selettore di vista e una seconda riga con Filtra assembly, Raggruppa per flusso, Imposta offuscamento pubblico e Imposta unione (vedi Comandi di configurazione).
Righe e colonne
Ogni riga è un target. Gli assembly uniti a un target non hanno una riga propria e compaiono nella sua scheda Input. Il conteggio a destra della barra degli strumenti indica, per esempio, 7 assembly, 1 assembly · 10 in merge quando alcuni target sono uniti a un altro target, oppure 3 di 12 assembly quando è attivo un filtro.
| Colonna | Contenuto |
|---|---|
| # | Posizione nell’ordine del progetto |
| Stato | Pronto, In esecuzione, Completato, Completato con avvisi, Non riuscito o Input mancante |
| File | File di input, con il chevron che apre i dettagli |
| Dettagli | Un riepilogo come unisce 3 · incorpora 1 · rif. 2, oppure il numero di avvisi dopo un’esecuzione |
| Output | Il file di output impostato per il target; vuoto quando il target scrive nella cartella BabelOut predefinita |
| Avanzamento | Avanzamento del target durante un’esecuzione, che resta visibile al termine |
Scegliere le colonne
Fai clic con il pulsante destro sull’intestazione di una colonna, oppure premi il tasto menu o Shift+F10 su un’intestazione, per scegliere le colonne visibili. Oltre alle colonne predefinite puoi aggiungere Flusso · Passo, Esegui dopo, Percorso di input e qualsiasi impostazione del pannello delle proprietà, come Cifratura stringhe o Control Flow Obfuscation. Ripristina predefiniti torna all’insieme predefinito. File è sempre visibile.



Scegliere le colonne visibili
Trascina un’intestazione, oppure premi Alt+← / Alt+→ su di essa, per spostare una colonna. L’insieme e l’ordine delle colonne vengono ricordati su questo computer e valgono per tutti i progetti.
Ordinare, filtrare e raggruppare
Fai clic su un’intestazione per ordinare in base a quella colonna e di nuovo per l’ordine decrescente. L’ordinamento cambia solo ciò che vedi e non cambia mai l’ordine di esecuzione. Fai clic su # per tornare a Ordine del progetto.
Digita in Filtra assembly per mostrare solo le righe il cui testo corrisponde. Raggruppa per flusso colloca le righe di ogni flusso sotto un’intestazione Flusso 1, Flusso 2. Con le colonne Flusso · Passo ed Esegui dopo aggiunte, la griglia mostra che cosa viene eseguito prima di che cosa.



Righe raggruppate per flusso
Selezionare e modificare
Le righe si selezionano e le celle si modificano come in un foglio di calcolo, con il mouse o solo con la tastiera.
| Per | Fai così |
|---|---|
| Selezionare una riga | Fai clic su di essa, oppure spostati con i tasti freccia |
| Aggiungere o togliere una riga dalla selezione | Ctrl+clic (Cmd+clic su macOS), oppure Ctrl+Space sulla riga attiva |
| Selezionare un intervallo | Shift+clic, oppure Shift con i tasti freccia |
| Selezionare tutte le righe visibili | Ctrl+A (Cmd+A su macOS). Con un filtro attivo vengono selezionate solo le righe corrispondenti. |
| Spostarsi tra le celle | Tasti freccia, Home, End, Page Up, Page Down |
| Modificare una cella | Enter, F2, un doppio clic oppure inizia a digitare |
| Confermare o annullare una modifica | Enter o Tab confermano, Esc annulla |
Una cella di impostazione si modifica con lo stesso controllo del pannello delle proprietà: una casella di controllo, un elenco, un campo di testo o un selettore di file. Le impostazioni composte mostrano un riepilogo, come attivo · goto, switch o 3 filtri, e aprono il loro editor in un popover.



Modificare un’impostazione composta in un popover
Una modifica si applica a tutte le righe selezionate. Quando alcuni target rifiutano il valore, Babel Desktop li elenca sotto Non applicato a tutti gli assembly selezionati:, mentre gli altri target mantengono il nuovo valore.
Le impostazioni non possono essere modificate durante un’esecuzione. #, Stato, File, Dettagli, Avanzamento, Flusso · Passo e Percorso di input sono di sola lettura.
Ordine di esecuzione
Nell’ordine del progetto, l’ordine delle righe è l’ordine dei target nel file di progetto. Per cambiarlo, ordina prima per #, poi trascina le righe, premi Alt+↑ / Alt+↓ oppure usa Sposta su / Sposta giù nel menu della riga. Questi comandi agiscono sulle righe selezionate e il nuovo ordine viene salvato con il progetto.
La cella Esegui dopo elenca i target che questo target attende. Modificarla apre un elenco degli altri target, ciascuno con una casella di controllo: selezionare un target aggiunge un arco di flusso da quel target a questo, deselezionarlo rimuove l’arco. I target da cui questo target legge una mappa sono selezionati e non si possono deselezionare qui; rimuovi invece il collegamento map.
I target vengono comunque eseguiti dopo i loro archi di flusso e collegamenti map: spostare una riga non fa mai eseguire un target prima di un target che attende. Con Impostazioni > Offuscamento > Esegui in parallelo i flussi indipendenti disattivata, i target vengono eseguiti nell’ordine delle righe entro questi limiti. Con l’opzione attivata, i flussi indipendenti possono essere eseguiti contemporaneamente.
Dettagli del target
Il chevron nella cella File, oppure Mostra dettagli / Nascondi dettagli nel menu della riga, apre sotto la riga cinque schede, ciascuna con il relativo conteggio:
| Scheda | Contenuto |
|---|---|
| Input | Assembly uniti, incorporati e referenziati, ciascuno con un elenco Azione (Unisci, Incorpora o Riferimento). Un file che non esiste è contrassegnato con File non trovato. |
| Regole | File di regole XML |
| Map | File map letti dal target. Una mappa scritta da un altro target del progetto riporta Da e il nome di quel target. |
| Plugin | DLL dei plugin del motore |
| Cartelle di ricerca | Cartelle in cui il motore cerca gli assembly referenziati |



Gli input di un target
L’icona + a destra delle schede aggiunge voci con un selettore di file o cartelle; nella scheda Input propone Aggiungi assembly da unire…, Aggiungi assembly da incorporare…, Aggiungi riferimenti ad assembly… e Aggiungi dipendenza automaticamente…. L’icona del cestino di una voce la rimuove. Fai clic con il pulsante destro su una voce di Regole o Map e scegli Applica a tutti gli assembly per aggiungere quel file a tutti i target che non lo hanno ancora.



Una mappa scritta da un altro target
Trascinare file
Trascina i file dal file manager sulla griglia:
- Gli assembly trascinati su un’area vuota creano target. Su una riga o sulla sua scheda Input vengono uniti a quel target.
- Un file
.snko.pfxsu una riga diventa il suo file di chiave, oppure quello di tutte le righe selezionate se la riga fa parte della selezione. - I file
.xmlsulla scheda Regole o Map vengono aggiunti come file di regole o file map, e i file.dllsulla scheda Plugin come plugin. - Un file
.babelapre quel progetto.
Gli altri file vengono rifiutati con Questi file non possono essere rilasciati qui.
Il menu della riga
Fai clic con il pulsante destro su una riga, oppure premi il tasto menu o Shift+F10, per aprirne il menu. Per una sola riga il menu inizia con i comandi del menu del nodo; per più righe selezionate inizia con Rimuovi assembly, che chiede conferma.



Il menu di una riga
| Comando | Effetto |
|---|---|
| Imposta livello di offuscamento | Livello: Leggero, Livello: Bilanciato o Livello: Massimo sulle righe selezionate. Vedi Livelli di protezione. |
| Copia impostazioni | Memorizza le impostazioni di protezione di questa riga |
| Incolla impostazioni | Sostituisce le impostazioni di protezione delle righe selezionate con quelle copiate |
| Sposta su, Sposta giù | Sposta le righe selezionate nell’ordine del progetto |
| Mostra dettagli, Nascondi dettagli | Apre o chiude le schede sotto le righe selezionate |
Incolla impostazioni disattiva anche le protezioni non impostate nella riga di origine, così i target finiscono per avere la stessa protezione. Percorsi, dipendenze, password, impostazioni di map e log, argomenti dei plugin e regole XML inline non vengono mai copiati.
Lavorare con molti target
Alcuni modi per configurare rapidamente un progetto di grandi dimensioni:
- Configura un target, poi usa Copia impostazioni sulla sua riga, seleziona le altre righe e scegli Incolla impostazioni.
- Digita parte di un nome in Filtra assembly, premi
Ctrl+A(Cmd+Asu macOS) per selezionare le righe corrispondenti e modifica una colonna di impostazione una sola volta per tutte. - Seleziona delle righe e usa Imposta livello di offuscamento per dare loro un punto di partenza, poi regola le singole impostazioni nelle rispettive colonne.
- Aggiungi un file di regole o un file map a un target e usa Applica a tutti gli assembly sulla sua voce.
- Prima di un’esecuzione, aggiungi le colonne Flusso · Passo ed Esegui dopo e attiva Raggruppa per flusso per controllare l’ordine.