Vai al contenuto
Leo

Libreria

Windows

Il computer: sistema, finestre delle applicazioni, schermi, batteria, dischi, audio, appunti, avvio.

  • 163 voci
  • Solo su Windows

Funzioni 163

Sistema, programmi, appunti e avvio

nome_computer()Solo Windows#

Il nome di questo computer in rete (per esempio "PC-UFFICIO").

Esempiocontrollato con Leo
stampa("Sono su", nome_computer())

nome_utente()Solo Windows#

Il nome dell'utente che ha acceso la sessione (per esempio "ada").

Esempiocontrollato con Leo
stampa("Ciao,", nome_utente())

versione_windows()Solo Windows#

La versione di Windows in una frase, per esempio "Windows 11 Pro 23H2 (build 22631.3447)".

Solo su Windows.

Esempiocontrollato con Leo
stampa(versione_windows())

info_windows()Solo Windows#

Un dizionario con le informazioni su Windows e sul computer.

Chiavi: "nome" ("Windows 11 Pro"), "versione" ("23H2"), "build", "edizione", "numero" (10 o 11), "architettura", "nome_computer", "utente", "acceso_da" (secondi). Solo su Windows.

Esempiocontrollato con Leo
se info_windows()["numero"] >= 11 allora stampa("Windows 11!") fine

architettura()Solo Windows#

Il tipo di processore per cui è fatto il sistema: "x64", "x86" o "ARM64".

Esempiocontrollato con Leo
se architettura() == "ARM64" allora stampa("Computer con processore ARM") fine

tempo_accensione()Solo Windows#

Da quanti secondi è acceso il computer (un intero).

Esempiocontrollato con Leo
stampa("Acceso da", tempo_accensione() // 3600, "ore")

tempo_accensione_testo()Solo Windows#

Da quanto è acceso il computer, in parole ("2 giorni, 3 ore e 5 minuti").

Esempiocontrollato con Leo
stampa("Il computer è acceso da", tempo_accensione_testo())

cartella_speciale(nome)Solo Windows#

Il percorso di una cartella speciale di Windows, dal suo nome italiano.

Nomi: "desktop", "documenti", "download", "immagini", "musica", "video", "appdata", "appdata_locale", "temporanea", "programmi", "programmi_x86", "menu_start", "programmi_menu_start", "esecuzione_automatica", "recenti", "preferiti", "modelli", "casa".

Esempiocontrollato con Leo
stampa(cartella_speciale("immagini"))

cartella_immagini()Solo Windows#

La cartella Immagini dell'utente.

Esempiocontrollato con Leo
copia_file("foto.png", cartella_immagini())

cartella_musica()Solo Windows#

La cartella Musica dell'utente.

Esempiocontrollato con Leo
stampa(elenca_file(cartella_musica(), "*.mp3"))

cartella_video()Solo Windows#

La cartella Video dell'utente.

Esempiocontrollato con Leo
stampa(cartella_video())

cartella_appdata()Solo Windows#

La cartella dei dati dei programmi dell'utente (%APPDATA%, "AppData\Roaming").

È il posto giusto per le impostazioni del tuo programma.

Esempiocontrollato con Leo
variabile mie = unisci_percorso(cartella_appdata(), "MioProgramma")

cartella_appdata_locale()Solo Windows#

La cartella dei dati locali dei programmi (%LOCALAPPDATA%, "AppData\Local").

Esempiocontrollato con Leo
stampa(cartella_appdata_locale())

cartella_temp_sistema()Solo Windows#

La cartella dei file temporanei di Windows (%TEMP%).

Diversa da cartella_temporanea(), che crea una cartella nuova che sparisce a fine programma.

Esempiocontrollato con Leo
stampa(cartella_temp_sistema())

cartella_programmi()Solo Windows#

La cartella in cui sono installati i programmi ("C:\Program Files").

Solo su Windows.

Esempiocontrollato con Leo
stampa(cartella_programmi())

cartella_menu_start()Solo Windows#

La cartella dei programmi del menu Start dell'utente.

Solo su Windows.

Esempiocontrollato con Leo
stampa(elenca_file(cartella_menu_start()))

leggi_variabile_ambiente(nome, predefinito = nulla)Solo Windows#

Il valore di una variabile d'ambiente (un testo).

Se la variabile non c'è restituisce predefinito. Su Windows maiuscole e minuscole non contano.

Esempiocontrollato con Leo
stampa(leggi_variabile_ambiente("USERPROFILE"))

imposta_variabile_ambiente(nome, valore)Solo Windows#

Imposta una variabile d'ambiente per questo programma.

La vedono anche i programmi avviati dopo con avvia_programma o esegui_comando; non cambia le impostazioni di Windows. Con valore = nulla la toglie.

Esempiocontrollato con Leo
imposta_variabile_ambiente("LINGUA", "it")

togli_variabile_ambiente(nome)Solo Windows#

Toglie una variabile d'ambiente da questo programma.

Restituisce vero se c'era.

Esempiocontrollato con Leo
togli_variabile_ambiente("LINGUA")

variabili_ambiente()Solo Windows#

Un dizionario con tutte le variabili d'ambiente (nome -> valore), in ordine.

Esempiocontrollato con Leo
per ogni nome in variabili_ambiente().chiavi() fai stampa(nome) fine

espandi_variabili_ambiente(testo)Solo Windows#

Sostituisce le parti come %USERPROFILE% con il loro valore.

Le variabili sconosciute restano come sono.

Esempiocontrollato con Leo
espandi_variabili_ambiente("%APPDATA%\\MioProgramma")

elenca_processi(filtro = "")Solo Windows#

La lista dei programmi in esecuzione (processi).

Ogni elemento è un dizionario con "nome", "pid", "pid_padre", "memoria" (byte, nulla se Windows non la dice) e "memoria_mb". Con filtro tiene solo i nomi che lo contengono. Solo su Windows.

Esempiocontrollato con Leo
per ogni p in elenca_processi("chrome") fai stampa(p["pid"], p["memoria_mb"]) fine

trova_processi(nome)Solo Windows#

I processi con esattamente quel nome ("notepad" trova anche "notepad.exe").

Restituisce una lista di dizionari come elenca_processi. Solo su Windows.

Esempiocontrollato con Leo
stampa(lunghezza(trova_processi("notepad")), "Blocco note aperti")

processo_esiste(nome_o_pid)Solo Windows#

vero se un programma con quel nome (o quel pid) è in esecuzione.

Solo su Windows.

Esempiocontrollato con Leo
se processo_esiste("excel") allora stampa("Excel è aperto") fine

pid_corrente()Solo Windows#

Il numero (pid) del processo di questo programma.

Esempiocontrollato con Leo
stampa("Il mio pid è", pid_corrente())

termina_processo(nome_o_pid, senza_conferma = falso)Solo Windows#

Chiude a forza un programma; restituisce quanti ne ha chiusi.

Con un nome chiude tutti i processi con quel nome. Prima chiede conferma all'utente (i dati non salvati di quel programma vanno persi); se l'utente dice No restituisce 0. I processi vitali di Windows e questo stesso programma non si chiudono. Solo su Windows.

Esempiocontrollato con Leo
termina_processo("notepad")

avvia_programma(programma, argomenti = [], attendi = falso, cartella = nulla, tempo_massimo = nulla)Solo Windows#

Avvia un programma.

Senza attendi restituisce subito il pid del nuovo processo; con attendi = vero aspetta che finisca e restituisce il suo codice di uscita (0 = tutto bene), oppure nulla se supera tempo_massimo secondi (il programma resta aperto).

Esempiocontrollato con Leo
avvia_programma("notepad.exe", ["nota.txt"])variabile codice = avvia_programma("C:/Strumenti/converti.exe", ["a.csv"], attendi = vero)

apri_con_programma_predefinito(percorso)Solo Windows#

Apre un file con il suo programma (come il doppio clic).

Un ".pdf" si apre con il lettore PDF, un ".docx" con Word e così via. Solo su Windows.

Esempiocontrollato con Leo
apri_con_programma_predefinito("resoconto.pdf")

apri_in_esplora_file(cartella = cartella corrente)Solo Windows#

Mostra una cartella in Esplora file.

Solo su Windows.

Esempiocontrollato con Leo
apri_in_esplora_file(cartella_documenti())

seleziona_in_esplora_file(percorso)Solo Windows#

Apre Esplora file sulla cartella del file, con il file selezionato.

Solo su Windows.

Esempiocontrollato con Leo
seleziona_in_esplora_file("C:/Documenti/fattura.pdf")

apri_indirizzo_web(indirizzo)Solo Windows#

Apre un sito nel browser predefinito.

Senza "https://" lo aggiunge Leo. Si accettano anche gli indirizzi "mailto:".

Esempiocontrollato con Leo
apri_indirizzo_web("www.wikipedia.it")

apri_impostazioni_windows(sezione = "home")Solo Windows#

Apre le Impostazioni di Windows alla pagina giusta.

Sezioni: "schermo", "suoni", "wifi", "bluetooth", "rete", "stampanti", "sfondo", "temi", "app_predefinite", "app_avvio", "aggiornamenti", "privacy", "data_ora", "lingua"... (tutte con sezioni_impostazioni()), oppure una pagina "ms-settings:...". Solo su Windows.

Esempiocontrollato con Leo
apri_impostazioni_windows("bluetooth")

sezioni_impostazioni()Solo Windows#

I nomi delle sezioni che apri_impostazioni_windows conosce.

Esempiocontrollato con Leo
stampa(sezioni_impostazioni())

esegui_comando(comando, tempo_massimo = 60, cartella = nulla, senza_conferma = falso)Solo Windows#

Esegue un comando del Prompt.

Il comando viene mostrato all'utente, che deve dare il permesso (salvo senza_conferma = vero). comando è un testo (come nel Prompt dei comandi) oppure una lista [programma, argomenti...]. Restituisce un dizionario: "uscita", "errore" (testi), "codice" (0 = riuscito), "riuscito", "scaduto" (superato tempo_massimo secondi), "annullato" (l'utente ha detto No).

Esempiocontrollato con Leo
variabile r = esegui_comando("ipconfig")stampa(r["uscita"])

esegui_powershell(script, tempo_massimo = 60, cartella = nulla, senza_conferma = falso)Solo Windows#

Esegue comandi PowerShell.

Lo script viene mostrato all'utente, che deve dare il permesso (salvo senza_conferma = vero). Restituisce lo stesso dizionario di esegui_comando ("uscita", "errore", "codice", "riuscito", "scaduto", "annullato"). Solo su Windows.

Esempiocontrollato con Leo
stampa(esegui_powershell("Get-Date -Format dd/MM/yyyy")["uscita"])

leggi_appunti()Solo Windows#

Il testo copiato negli appunti ("" se negli appunti non c'è testo).

Solo su Windows.

Esempiocontrollato con Leo
stampa("Hai copiato:", leggi_appunti())

scrivi_appunti(testo)Solo Windows#

Copia un testo negli appunti (poi si incolla con Ctrl+V).

Numeri e liste si copiano come si vedono con stampa. Solo su Windows.

Esempiocontrollato con Leo
scrivi_appunti("Ciao da Leo!")

svuota_appunti()Solo Windows#

Cancella il contenuto degli appunti.

Solo su Windows.

Esempiocontrollato con Leo
svuota_appunti()

appunti_contiene_testo()Solo Windows#

vero se negli appunti c'è un testo.

Solo su Windows.

Esempiocontrollato con Leo
se appunti_contiene_testo() allora stampa(leggi_appunti()) fine

appunti_contiene_immagine()Solo Windows#

vero se negli appunti c'è un'immagine (per esempio uno screenshot).

Solo su Windows.

Esempiocontrollato con Leo
se appunti_contiene_immagine() allora salva_immagine_appunti("cattura.png") fine

salva_immagine_appunti(percorso)Solo Windows#

Salva l'immagine degli appunti in un file PNG.

Restituisce vero se l'ha salvata, falso se negli appunti non c'è un'immagine. Solo su Windows.

Esempiocontrollato con Leo
salva_immagine_appunti(unisci_percorso(cartella_immagini(), "cattura.png"))

copia_file_negli_appunti(percorsi)Solo Windows#

Copia uno o più file negli appunti, come Ctrl+C in Esplora file.

percorsi è un testo o una lista di testi; poi si incollano con Ctrl+V in una cartella. Solo su Windows.

Esempiocontrollato con Leo
copia_file_negli_appunti(["foto1.jpg", "foto2.jpg"])

sposta_nel_cestino(percorso)Solo Windows#

Mette un file o una cartella nel cestino (si può ripristinare).

Le cartelle importanti (Documenti, Desktop, la cartella personale...) sono protette.

Esempiocontrollato con Leo
sposta_nel_cestino("vecchia_bozza.txt")

elementi_nel_cestino()Solo Windows#

Quanti file e cartelle ci sono nel cestino.

Solo su Windows.

Esempiocontrollato con Leo
stampa("Nel cestino:", elementi_nel_cestino())

dimensione_cestino()Solo Windows#

Quanti byte occupa il cestino.

Solo su Windows.

Esempiocontrollato con Leo
stampa(dimensione_leggibile(dimensione_cestino()))

svuota_cestino(senza_conferma = falso)Solo Windows#

Elimina per sempre tutto quello che c'è nel cestino.

Prima chiede conferma all'utente. Restituisce vero se il cestino ora è vuoto, falso se l'utente ha detto No. Solo su Windows.

Esempiocontrollato con Leo
svuota_cestino()

crea_collegamento(destinazione, nome, dove = "desktop", argomenti, icona, descrizione, cartella_lavoro, sovrascrivi = falso)Solo Windows#

Crea un collegamento (.lnk).

dove è "desktop", "menu_start" oppure una cartella. icona è un file .ico/.exe (anche "file.exe,2" per la terza icona). Restituisce il percorso del collegamento. Solo su Windows.

Esempiocontrollato con Leo
crea_collegamento("C:/Giochi/gioco.exe", "Il mio gioco", icona = "C:/Giochi/gioco.ico")

destinazione_collegamento(percorso)Solo Windows#

Il file o la cartella a cui porta un collegamento .lnk.

Solo su Windows.

Esempiocontrollato con Leo
stampa(destinazione_collegamento("C:/Users/ada/Desktop/Gioco.lnk"))

info_collegamento(percorso)Solo Windows#

Un dizionario con "destinazione", "argomenti", "cartella_lavoro", "icona", "descrizione".

Solo su Windows.

Esempiocontrollato con Leo
stampa(info_collegamento("Gioco.lnk")["argomenti"])

file_recenti(quanti = 20)Solo Windows#

I file aperti di recente in Windows, dal più nuovo.

Ogni elemento è un dizionario con "nome", "percorso", "data" (quando è stato aperto), "esiste" e "cartella" (vero se è una cartella). Solo su Windows.

Esempiocontrollato con Leo
per ogni f in file_recenti(5) fai stampa(f["nome"], f["data"]) fine

programmi_all_avvio()Solo Windows#

I programmi che partono quando accedi a Windows (nome -> comando).

Sono quelli del tuo utente (non quelli di tutto il computer). Solo su Windows.

Esempiocontrollato con Leo
stampa(programmi_all_avvio())

e_all_avvio(nome)Solo Windows#

vero se nell'avvio automatico c'è un programma con questo nome.

Solo su Windows.

Esempiocontrollato con Leo
se non e_all_avvio("MioProgramma") allora stampa("Non parte da solo") fine

aggiungi_all_avvio(programma, nome, argomenti = "", senza_conferma = falso)Solo Windows#

Fa partire un programma quando accedi a Windows.

Scrive solo nelle impostazioni del tuo utente, dopo aver chiesto conferma. Restituisce vero se l'ha aggiunto, falso se l'utente ha detto No. Solo su Windows.

Esempiocontrollato con Leo
aggiungi_all_avvio("C:/Programmi/Promemoria/promemoria.exe", "Promemoria")

togli_dall_avvio(nome, senza_conferma = falso)Solo Windows#

Toglie un programma dall'avvio automatico.

Chiede conferma. Restituisce vero se l'ha tolto, falso se non c'era o se l'utente ha detto No. Solo su Windows.

Esempiocontrollato con Leo
togli_dall_avvio("Promemoria")

programma_predefinito(estensione)Solo Windows#

Il percorso del programma che apre quel tipo di file (o nulla).

Solo su Windows.

Esempiocontrollato con Leo
stampa(programma_predefinito(".pdf"))

nome_programma_predefinito(estensione)Solo Windows#

Il nome del programma che apre quel tipo di file, per esempio "Blocco note".

Restituisce nulla se nessun programma è associato. Solo su Windows.

Esempiocontrollato con Leo
stampa("I .txt si aprono con", nome_programma_predefinito("txt"))

Finestre, schermi e desktop

elenca_finestre(filtro = "")Solo Windows#

Le finestre delle applicazioni aperte, dalla più in alto.

Ogni elemento è un dizionario con "id", "titolo", "programma" (per

Esempiocontrollato con Leo
per ogni f in elenca_finestre() fai stampa(f["titolo"], "-", f["programma"]) fine

trova_finestra(titolo)Solo Windows#

La finestra con quel titolo (o che lo contiene), oppure nulla.

Non conta maiuscole e minuscole; va bene anche il nome del programma ("notepad"). Se ce ne sono più di una, prima quella con il titolo uguale, poi la più in alto. Solo su Windows.

Esempiocontrollato con Leo
f = trova_finestra("Blocco note")se f != nulla allora stampa(f["id"]) fine

trova_finestre(titolo)Solo Windows#

Tutte le finestre che hanno quel testo nel titolo (o nel nome del programma).

Restituisce una lista di dizionari come elenca_finestre (vuota se non ce n'è nessuna). Solo su Windows.

Esempiocontrollato con Leo
stampa(lunghezza(trova_finestre("Chrome")), "finestre di Chrome")

finestra_esiste(finestra)Solo Windows#

vero se la finestra (titolo, dizionario o id) è ancora aperta.

Solo su Windows.

Esempiocontrollato con Leo
mentre finestra_esiste("Calcolatrice") fai attendi(1) fine

finestra_attiva()Solo Windows#

La finestra in primo piano (quella che riceve i tasti), oppure nulla.

Restituisce un dizionario come elenca_finestre. Solo su Windows.

Esempiocontrollato con Leo
stampa("Stai usando:", finestra_attiva()["titolo"])

info_finestra(finestra)Solo Windows#

I dati aggiornati della finestra (posizione, dimensioni, stato...).

Restituisce un dizionario come elenca_finestre; errore se la finestra non c'è. Solo su Windows.

Esempiocontrollato con Leo
f = info_finestra("Blocco note")stampa(f["larghezza"], "x", f["altezza"])

porta_in_primo_piano(finestra)Solo Windows#

Mostra la finestra davanti alle altre e la rende attiva.

Se era minimizzata la ripristina. Restituisce vero se Windows l'ha messa in primo piano (a volte Windows lo impedisce e fa solo lampeggiare il pulsante nella barra). Solo su Windows.

Esempiocontrollato con Leo
porta_in_primo_piano("Blocco note")

minimizza_finestra(finestra)Solo Windows#

Riduce la finestra a icona nella barra delle applicazioni.

Restituisce i dati aggiornati della finestra. Solo su Windows.

Esempiocontrollato con Leo
minimizza_finestra("Blocco note")

massimizza_finestra(finestra)Solo Windows#

Ingrandisce la finestra a tutto schermo (con la barra visibile).

Restituisce i dati aggiornati della finestra. Solo su Windows.

Esempiocontrollato con Leo
massimizza_finestra("Blocco note")

ripristina_finestra(finestra)Solo Windows#

Riporta la finestra minimizzata o massimizzata alla sua misura normale.

Restituisce i dati aggiornati della finestra. Solo su Windows.

Esempiocontrollato con Leo
ripristina_finestra("Blocco note")

sposta_finestra(finestra, x, y)Solo Windows#

Mette l'angolo in alto a sinistra della finestra nel punto (x, y).

Le coordinate sono in pixel del desktop (0, 0 = angolo dello schermo principale; gli altri schermi possono avere coordinate negative). Una finestra massimizzata viene prima ripristinata. Restituisce i dati aggiornati. Solo su Windows.

Esempiocontrollato con Leo
sposta_finestra("Blocco note", 100, 50)

ridimensiona_finestra(finestra, larghezza, altezza)Solo Windows#

Cambia le dimensioni della finestra (in pixel).

L'angolo in alto a sinistra resta dov'è; una finestra massimizzata viene prima ripristinata. Restituisce i dati aggiornati. Solo su Windows.

Esempiocontrollato con Leo
ridimensiona_finestra("Blocco note", 800, 600)

sempre_in_primo_piano(finestra, attivo = vero)Solo Windows#

Tiene la finestra sopra tutte le altre (o smette con falso).

Restituisce i dati aggiornati (chiave "sempre_in_primo_piano"). Solo su Windows.

Esempiocontrollato con Leo
sempre_in_primo_piano("Calcolatrice")sempre_in_primo_piano("Calcolatrice", falso)

chiudi_finestra_programma(finestra, senza_conferma = falso)Solo Windows#

Chiede a un'altra applicazione di chiudere la finestra.

È come premere la X: il programma può chiedere di salvare il lavoro o rifiutare. Prima chiede conferma all'utente del programma Leo (salvo senza_conferma = vero). Restituisce vero se la richiesta è partita, falso se l'utente risponde No. Per le finestre del proprio programma Leo si usa chiudi_finestra. Solo su Windows.

Esempiocontrollato con Leo
se chiudi_finestra_programma("Blocco note") allora stampa("Richiesta inviata") fine

affianca_finestre(sinistra, destra, divisione = 50)Solo Windows#

Mette due finestre una accanto all'altra.

Usano tutta l'area di lavoro dello schermo dove si trova la prima; divisione è la percentuale di larghezza della finestra di sinistra (da 10 a 90). Restituisce la lista dei due dizionari aggiornati. Solo su Windows.

Esempiocontrollato con Leo
affianca_finestre("Blocco note", "Calcolatrice", 60)

numero_schermi()Solo Windows#

Quanti schermi (monitor) sono collegati e accesi.

Solo su Windows.

Esempiocontrollato con Leo
se numero_schermi() > 1 allora stampa("Hai più schermi") fine

elenca_schermi()Solo Windows#

Gli schermi collegati, il principale per primo.

Ogni elemento è un dizionario con "numero" (da 1), "nome", "dispositivo", "principale", "x", "y", "larghezza", "altezza" (in pixel), "area_di_lavoro" (senza la barra delle applicazioni), "dpi", "scala" (percentuale, per

Esempiocontrollato con Leo
per ogni s in elenca_schermi() fai stampa(s["numero"], s["larghezza"], "x", s["altezza"]) fine

schermo_principale()Solo Windows#

Il dizionario dello schermo principale (quello con la barra e l'orologio).

Ha le stesse chiavi degli elementi di elenca_schermi. Solo su Windows.

Esempiocontrollato con Leo
stampa(schermo_principale()["nome"])

risoluzione_schermo(schermo = nulla)Solo Windows#

Larghezza e altezza in pixel dello schermo (predefinito: il principale).

Restituisce un dizionario con "larghezza" e "altezza". Solo su Windows.

Esempiocontrollato con Leo
r = risoluzione_schermo()stampa(r["larghezza"], "x", r["altezza"])

scala_schermo(schermo = nulla)Solo Windows#

La scala di Windows in percentuale (100, 125, 150...) dello schermo.

È l'impostazione "Ridimensiona" di Impostazioni > Schermo. Solo su Windows.

Esempiocontrollato con Leo
stampa("Scala:", scala_schermo(), "%")

area_di_lavoro(schermo = nulla)Solo Windows#

La parte dello schermo libera dalla barra delle applicazioni.

Restituisce un dizionario con "x", "y", "larghezza" e "altezza". Solo su Windows.

Esempiocontrollato con Leo
a = area_di_lavoro()sposta_finestra("Blocco note", a["x"], a["y"])

frequenza_schermo(schermo = nulla)Solo Windows#

Quante volte al secondo si aggiorna lo schermo (Hz, per esempio 60 o 144).

0 se Windows non lo sa. Solo su Windows.

Esempiocontrollato con Leo
stampa(frequenza_schermo(), "Hz")

cattura_schermo(percorso = nulla, schermo = nulla)Solo Windows#

Salva un'immagine PNG di quello che si vede.

Senza schermo cattura tutti gli schermi insieme; con schermo = 1 solo il principale, ecc. Senza percorso il nome è "cattura_AAAAMMGG_HHMMSS.png" nella cartella corrente. Restituisce il percorso completo del file. Solo su Windows.

Esempiocontrollato con Leo
stampa("Salvata in", cattura_schermo("desktop.png"))

cattura_zona(x, y, larghezza, altezza, percorso = nulla)Solo Windows#

Salva in PNG un rettangolo dello schermo.

Le coordinate sono in pixel del desktop. Restituisce il percorso completo del file. Solo su Windows.

Esempiocontrollato con Leo
cattura_zona(0, 0, 400, 300, "angolo.png")

cattura_finestra(finestra, percorso = nulla)Solo Windows#

Salva in PNG l'immagine di una finestra.

Funziona anche se la finestra è coperta da altre (non se è minimizzata: prima la si ripristina). Restituisce il percorso completo del file. Solo su Windows.

Esempiocontrollato con Leo
cattura_finestra("Calcolatrice", "calcolatrice.png")

colore_punto(x, y)Solo Windows#

Il colore del punto (x, y) dello schermo, come "#RRGGBB" (lo stesso formato di rgb).

Solo su Windows.

Esempiocontrollato con Leo
stampa("In alto a sinistra c'è", colore_punto(0, 0))

mostra_notifica(titolo, testo = "", icona = "info")Solo Windows#

Mostra una notifica di Windows in basso a destra.

icona può essere "info", "avviso", "errore", "nessuna" o il percorso di un'immagine. Usa le notifiche di Windows 10/11; se non vanno, il fumetto dell'area di notifica. Restituisce "notifica" o "fumetto" (quale è stato usato). Solo su Windows.

Esempiocontrollato con Leo
mostra_notifica("Backup finito", "Copiati 120 file")

messaggio_windows(testo, titolo = "Leo", icona = "info")Solo Windows#

Una vera finestra di messaggio di Windows con OK.

A differenza di messaggio, appare come finestra anche nei programmi testuali. icona: "info", "avviso", "errore", "domanda" o "nessuna". Il programma aspetta che si prema OK. Solo su Windows (nei programmi con finestre usa Qt).

Esempiocontrollato con Leo
messaggio_windows("Copia finita", icona = "info")

domanda_windows(testo, titolo = "Leo")Solo Windows#

Una finestra di Windows con Sì e No; vero se si preme Sì.

A differenza di domanda, appare come finestra anche nei programmi testuali. Solo su Windows (nei programmi con finestre usa Qt).

Esempiocontrollato con Leo
se domanda_windows("Vuoi continuare?") allora stampa("Avanti!") fine

scegli_file_da_aprire(titolo = "Apri un file", filtri = nulla, cartella = nulla)Solo Windows#

La finestra "Apri" di Windows.

Restituisce il percorso del file scelto, oppure nulla se l'utente annulla. filtri limita i tipi di file: ["png", "jpg"], {"Immagini": ["png", "jpg"], "Testi": "txt"} o "Testi (*.txt)". Solo su Windows (nei programmi con finestre usa Qt).

Esempiocontrollato con Leo
f = scegli_file_da_aprire("Scegli una foto", ["jpg", "png"])

scegli_piu_file(titolo = "Scegli i file", filtri = nulla, cartella = nulla)Solo Windows#

La finestra "Apri" con più file.

Si selezionano più file con Ctrl o Maiusc. Restituisce la lista dei percorsi (vuota se l'utente annulla). filtri come in scegli_file_da_aprire. Solo su Windows (nei programmi con finestre usa Qt).

Esempiocontrollato con Leo
per ogni f in scegli_piu_file(filtri = ["txt"]) fai stampa(f) fine

scegli_file_da_salvare(titolo = "Salva con nome", filtri = nulla, cartella = nulla, nome = "")Solo Windows#

La finestra "Salva con nome".

nome è il nome proposto; se l'utente non scrive l'estensione si aggiunge quella del primo filtro. Se il file esiste Windows chiede se sostituirlo. Restituisce il percorso scelto (il file NON viene creato) oppure nulla se l'utente annulla. Solo su Windows (nei programmi con finestre usa Qt).

Esempiocontrollato con Leo
p = scegli_file_da_salvare(filtri = ["txt"], nome = "note.txt")

scegli_cartella(titolo = "Scegli una cartella", cartella = nulla)Solo Windows#

La finestra di Windows per scegliere una cartella.

Restituisce il percorso della cartella, oppure nulla se l'utente annulla. cartella è quella proposta all'inizio. Solo su Windows (nei programmi con finestre usa Qt).

Esempiocontrollato con Leo
c = scegli_cartella("Dove salvo le foto?")

chiedi_colore(iniziale = "#FFFFFF")Solo Windows#

La finestra dei colori di Windows; restituisce il colore scelto come "#RRGGBB".

Restituisce nulla se l'utente annulla. Il risultato si usa dovunque serva un colore (come rgb). Solo su Windows (nei programmi con finestre usa Qt).

Esempiocontrollato con Leo
c = chiedi_colore("#FF8800")se c != nulla allora Finestra1.sfondo = c fine

sfondo_desktop()Solo Windows#

Il percorso dell'immagine di sfondo del desktop ("" se lo sfondo è un colore).

Solo su Windows.

Esempiocontrollato con Leo
stampa("Sfondo attuale:", sfondo_desktop())

imposta_sfondo_desktop(percorso, stile = nulla)Solo Windows#

Mette un'immagine come sfondo del desktop.

stile: "riempi", "adatta", "estendi", "affianca", "centra" o "estendi_su_schermi" (nulla = lascia quello attuale). Restituisce il percorso dello sfondo di prima, così si può rimettere. Solo su Windows.

Esempiocontrollato con Leo
vecchio = imposta_sfondo_desktop("C:/Immagini/mare.jpg", "riempi")

tema_windows(parte = "app")Solo Windows#

"chiaro" o "scuro", il tema scelto in Impostazioni > Personalizzazione > Colori.

parte = "app" è il tema delle applicazioni, parte = "sistema" quello della barra e del menu Start. Solo su Windows.

Esempiocontrollato con Leo
se tema_windows() == "scuro" allora Finestra1.sfondo = "#202020" fine

tema_scuro_attivo()Solo Windows#

vero se le applicazioni di Windows usano il tema scuro.

Solo su Windows.

Esempiocontrollato con Leo
se tema_scuro_attivo() allora stampa("Modalità scura") fine

colore_accento()Solo Windows#

Il colore d'accento di Windows come "#RRGGBB", oppure nulla se Windows non lo dice.

Solo su Windows.

Esempiocontrollato con Leo
Pulsante1.sfondo = colore_accento()

suono_di_sistema(tipo = "predefinito")Solo Windows#

Fa sentire un suono di avviso di Windows.

Tipi: "predefinito", "informazione", "avviso", "errore", "domanda", "bip", "notifica", "posta", "promemoria" (vedi suoni_di_sistema()). I suoni sono quelli scelti nel Pannello di controllo; il programma non aspetta la fine. Solo su Windows.

Esempiocontrollato con Leo
suono_di_sistema("errore")

suoni_di_sistema()Solo Windows#

I nomi dei suoni di avviso che si possono usare con suono_di_sistema.

Funziona su ogni sistema.

Esempiocontrollato con Leo
per ogni s in suoni_di_sistema() fai stampa(s) fine

Batteria, dischi, audio, rete e hardware

info_batteria()Solo Windows#

Tutto sulla batteria in un dizionario.

Chiavi: presente, percentuale (0-100 o nulla), in_carica, alla_corrente, minuti_rimasti (nulla se non si sa o se è alla corrente), risparmio_energetico.

Esempiocontrollato con Leo
variabile b = info_batteria()stampa(b["percentuale"])

ha_batteria()Solo Windows#

vero se il computer ha una batteria (un portatile).

Esempiocontrollato con Leo
se ha_batteria() allora stampa("Portatile") fine

percentuale_batteria()Solo Windows#

Carica della batteria da 0 a 100 (nulla se non c'è batteria).

Esempiocontrollato con Leo
se percentuale_batteria() < 20 allora messaggio("Batteria quasi scarica") fine

batteria_in_carica()Solo Windows#

vero se la batteria si sta caricando.

Esempiocontrollato con Leo
stampa("In carica: {batteria_in_carica()}")

tempo_batteria_rimasto()Solo Windows#

Minuti di autonomia stimati (nulla se alla corrente o non si sa).

Esempiocontrollato con Leo
variabile m = tempo_batteria_rimasto()se m != nulla allora stampa("{m} minuti") fine

blocca_computer(ritardo = 0, senza_conferma = falso)Solo Windows#

Blocca lo schermo (come Windows+L).

ritardo in secondi; restituisce vero se fatto (o programmato), falso se l'utente dice No.

Esempiocontrollato con Leo
blocca_computer(ritardo = 30)

sospendi_computer(ritardo = 0, senza_conferma = falso)Solo Windows#

Mette il computer in sospensione (standby).

Chiede conferma; ritardo in secondi.

Esempiocontrollato con Leo
sospendi_computer(ritardo = 600)

iberna_computer(ritardo = 0, senza_conferma = falso)Solo Windows#

Iberna il computer (se l'ibernazione è attiva).

Chiede conferma; ritardo in secondi.

Esempiocontrollato con Leo
iberna_computer()

spegni_computer(ritardo = 0, senza_conferma = falso)Solo Windows#

Spegne il computer, dopo una conferma.

Con ritardo (secondi) lo spegnimento è programmato e si può annullare con annulla_spegnimento().

Esempiocontrollato con Leo
spegni_computer(ritardo = 3600)

riavvia_computer(ritardo = 0, senza_conferma = falso)Solo Windows#

Riavvia il computer, dopo una conferma.

Esempiocontrollato con Leo
se riavvia_computer(ritardo = 60) allora stampa("Riavvio tra un minuto") fine

disconnetti_utente(ritardo = 0, senza_conferma = falso)Solo Windows#

Esce dall'account di Windows (logout).

Chiede conferma.

Esempiocontrollato con Leo
disconnetti_utente()

annulla_spegnimento()Solo Windows#

Annulla spegnimenti, riavvii e sospensioni programmati; dice cosa ha annullato.

Restituisce la lista delle azioni annullate (vuota se non c'era niente).

Esempiocontrollato con Leo
stampa(annulla_spegnimento())

impedisci_standby(schermo = vero)Solo Windows#

Finché il programma lavora il PC non va in standby.

Con schermo = vero anche lo schermo resta acceso. Vale fino a consenti_standby() o alla fine del programma.

Esempiocontrollato con Leo
impedisci_standby()

consenti_standby()Solo Windows#

Il computer torna ad andare in standby e a spegnere lo schermo come sempre.

Esempiocontrollato con Leo
stampa(consenti_standby())

volume_principale()Solo Windows#

Volume delle casse o cuffie predefinite, da 0 a 100.

Esempiocontrollato con Leo
stampa("Volume: {volume_principale()}")

imposta_volume(livello)Solo Windows#

Imposta il volume principale (da 0 a 100).

Esempiocontrollato con Leo
imposta_volume(30)

alza_volume(passo = 10)Solo Windows#

Alza il volume di passo punti (fino a 100); restituisce il nuovo volume.

Esempiocontrollato con Leo
alza_volume(5)

abbassa_volume(passo = 10)Solo Windows#

Abbassa il volume di passo punti (fino a 0); restituisce il nuovo volume.

Esempiocontrollato con Leo
abbassa_volume()

e_muto()Solo Windows#

vero se l'audio è disattivato (muto).

Esempiocontrollato con Leo
se e_muto() allora imposta_muto(falso) fine

imposta_muto(muto = vero)Solo Windows#

Toglie (vero) o rimette (falso) l'audio.

Esempiocontrollato con Leo
imposta_muto()imposta_muto(falso)

dispositivi_audio()Solo Windows#

Le uscite audio attive (casse, cuffie...): lista di dizionari.

Ogni elemento ha nome, predefinito (vero/falso) e id.

Esempiocontrollato con Leo
per ogni d in dispositivi_audio() fai stampa(d["nome"]) fine

luminosita_schermo()Solo Windows#

Luminosità dello schermo da 0 a 100 (nulla se lo schermo non lo permette).

Di solito funziona sugli schermi dei portatili, non sui monitor esterni.

Esempiocontrollato con Leo
stampa(luminosita_schermo())

imposta_luminosita(livello)Solo Windows#

Cambia la luminosità dello schermo (0-100); falso se non si può.

Esempiocontrollato con Leo
imposta_luminosita(70)

uso_cpu(intervallo = 0.5)Solo Windows#

Quanto lavora il processore, in percentuale (0-100).

Misura per intervallo secondi (da 0.1 a 10).

Esempiocontrollato con Leo
stampa("CPU al {uso_cpu()}%")

numero_core(fisici = falso)Solo Windows#

Quanti processori logici ha il computer (con fisici = vero i core veri).

Esempiocontrollato con Leo
stampa("Core: {numero_core()}")

info_memoria()Solo Windows#

La memoria RAM: dizionario con totale, libera, usata (byte) e percentuale_usata.

Per un testo leggibile usa dimensione_leggibile(...).

Esempiocontrollato con Leo
stampa(dimensione_leggibile(info_memoria()["libera"]))

memoria_totale()Solo Windows#

Memoria RAM installata, in byte.

Esempiocontrollato con Leo
stampa(dimensione_leggibile(memoria_totale()))

memoria_libera()Solo Windows#

Memoria RAM ancora disponibile, in byte.

Esempiocontrollato con Leo
stampa(dimensione_leggibile(memoria_libera()))

uso_memoria()Solo Windows#

Percentuale di memoria RAM usata (0-100).

Esempiocontrollato con Leo
se uso_memoria() > 90 allora stampa("Memoria quasi piena") fine

processi_piu_pesanti(quanti = 5)Solo Windows#

I programmi che usano più memoria.

Lista di dizionari con nome, pid, memoria (byte) e cpu_secondi.

Esempiocontrollato con Leo
per ogni p in processi_piu_pesanti(3) fai stampa(p["nome"]) fine

elenca_unita()Solo Windows#

I dischi e le unità del computer (C:, D:, chiavette...).

Ogni elemento ha unita, tipo ("disco fisso", "rimovibile", "rete", "CD/DVD"...), etichetta, file_system, pronta, totale, libero, usato (byte).

Esempiocontrollato con Leo
per ogni u in elenca_unita() fai stampa(u["unita"], u["tipo"]) fine

info_unita(unita = "C:")Solo Windows#

Le informazioni su un'unità (come un elemento di elenca_unita).

Esempiocontrollato con Leo
stampa(info_unita("D:")["etichetta"])

spazio_libero(unita = "C:")Solo Windows#

Byte liberi sull'unità.

Esempiocontrollato con Leo
stampa(dimensione_leggibile(spazio_libero("C:")))

spazio_totale(unita = "C:")Solo Windows#

Capacità dell'unità in byte.

Per lo spazio occupato da una cartella usa dimensione_cartella(...).

Esempiocontrollato con Leo
stampa(dimensione_leggibile(spazio_totale()))

indirizzi_ip_locali()Solo Windows#

Gli indirizzi IPv4 del computer nella rete locale (lista di testi).

Esempiocontrollato con Leo
stampa(indirizzi_ip_locali())

indirizzo_ip_locale()Solo Windows#

L'indirizzo IP locale principale (quello usato per uscire in rete), o nulla.

Esempiocontrollato con Leo
stampa("Il mio IP: {indirizzo_ip_locale()}")

ip_pubblico(tempo_massimo = 5)Solo Windows#

L'indirizzo IP con cui il computer si vede su Internet.

Chiede a un servizio pubblico (api.ipify.org); aspetta al massimo tempo_massimo secondi.

Esempiocontrollato con Leo
stampa(ip_pubblico())

wifi_connesso()Solo Windows#

La rete Wi-Fi a cui si è collegati, o nulla.

Dizionario con nome, segnale (0-100), bssid, canale, autenticazione, scheda.

Esempiocontrollato con Leo
variabile w = wifi_connesso()se w != nulla allora stampa(w["nome"]) fine

potenza_wifi()Solo Windows#

Potenza del segnale Wi-Fi da 0 a 100 (nulla se non connesso).

Esempiocontrollato con Leo
stampa("Segnale: {potenza_wifi()}%")

schede_di_rete()Solo Windows#

Le schede di rete (Ethernet, Wi-Fi...): lista di dizionari.

Ogni elemento ha nome, descrizione, stato, connessa, mac, velocita.

Esempiocontrollato con Leo
per ogni s in schede_di_rete() fai stampa(s["nome"], s["stato"]) fine

invia_ping(indirizzo, volte = 4, tempo_massimo = 2)Solo Windows#

Controlla se un computer in rete risponde.

Restituisce un dizionario con raggiungibile, inviati, ricevuti, persi, percentuale_persi, tempi (millisecondi), minimo, massimo, medio, ip.

Esempiocontrollato con Leo
se invia_ping("192.168.1.1")["raggiungibile"] allora stampa("Il router risponde") fine

elenca_stampanti()Solo Windows#

Le stampanti installate: lista di dizionari.

Ogni elemento ha nome, predefinita, in_linea, porta, driver, condivisa.

Esempiocontrollato con Leo
per ogni s in elenca_stampanti() fai stampa(s["nome"]) fine

nome_stampante_predefinita()Solo Windows#

Il nome della stampante predefinita (nulla se non ce n'è).

Esempiocontrollato con Leo
stampa(nome_stampante_predefinita())

stampa_documento(percorso, senza_conferma = falso)Solo Windows#

Stampa un file (testo, PDF...) con il programma predefinito.

Chiede conferma; restituisce vero se la stampa è partita.

Esempiocontrollato con Leo
stampa_documento("relazione.pdf")

leggi_registro(chiave, nome = "")Solo Windows#

Legge un valore del registro di Windows (nulla se non c'è).

La chiave comincia con HKCU, HKLM, HKCR, HKU o HKCC; separa le parti con /. nome = "" legge il valore predefinito della chiave.

Esempiocontrollato con Leo
leggi_registro("HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion", "ProductName")

elenca_chiavi_registro(chiave)Solo Windows#

I nomi delle sottochiavi di una chiave del registro.

Esempiocontrollato con Leo
stampa(elenca_chiavi_registro("HKCU/Software"))

elenca_valori_registro(chiave)Solo Windows#

I valori di una chiave del registro, in un dizionario nome -> valore.

Esempiocontrollato con Leo
stampa(elenca_valori_registro("HKCU/Control Panel/Desktop"))

esiste_chiave_registro(chiave)Solo Windows#

vero se la chiave del registro esiste.

Esempiocontrollato con Leo
se esiste_chiave_registro("HKCU/Software/MioProgramma") allora stampa("esiste") fine

scrivi_registro(chiave, nome, valore, senza_conferma = falso)Solo Windows#

Scrive un valore nel registro (solo HKCU).

Crea la chiave se manca. Testi, interi, vero/falso e liste di testi. Chiede conferma; restituisce vero se scritto.

Esempiocontrollato con Leo
scrivi_registro("HKCU/Software/MioProgramma", "tema", "scuro")

elimina_valore_registro(chiave, nome, senza_conferma = falso)Solo Windows#

Cancella un valore del registro (solo HKCU).

Chiede conferma; vero se cancellato, falso se non c'era o l'utente ha detto No.

Esempiocontrollato con Leo
elimina_valore_registro("HKCU/Software/MioProgramma", "tema")

elimina_chiave_registro(chiave, senza_conferma = falso)Solo Windows#

Cancella una chiave vuota di sottochiavi (solo HKCU).

Per sicurezza non cancella chiavi che ne contengono altre. Chiede conferma.

Esempiocontrollato con Leo
elimina_chiave_registro("HKCU/Software/MioProgramma")

elenca_servizi(solo_attivi = falso)Solo Windows#

I servizi di Windows con nome, nome_visualizzato, stato, avvio.

stato è per

Esempiocontrollato con Leo
stampa(lunghezza(elenca_servizi(solo_attivi = vero)))

stato_servizio(nome)Solo Windows#

Lo stato di un servizio ("in esecuzione", "fermo", "in pausa"...).

Esempiocontrollato con Leo
stampa(stato_servizio("Spooler"))

servizio_attivo(nome)Solo Windows#

vero se il servizio è in esecuzione.

Esempiocontrollato con Leo
se non servizio_attivo("Spooler") allora stampa("Stampa non disponibile") fine

e_amministratore()Solo Windows#

vero se il programma gira con i permessi di amministratore.

Esempiocontrollato con Leo
se non e_amministratore() allora stampa("Servono i permessi di amministratore") fine

info_sessione()Solo Windows#

L'utente collegato: utente, dominio, computer, amministratore, sessione_remota, cartella_profilo.

Esempiocontrollato con Leo
stampa(info_sessione()["dominio"])

fuso_orario()Solo Windows#

Il fuso orario: nome, scarto_ore rispetto a UTC, ora_legale, id di Windows.

Esempiocontrollato con Leo
stampa("UTC + {fuso_orario()["scarto_ore"]}")

ora_utc()Solo Windows#

Data e ora attuali in UTC (tempo universale), come data.

Esempiocontrollato con Leo
stampa(ora_utc())

sincronizzazione_ora()Solo Windows#

Come Windows tiene giusto l'orologio: attiva, tipo, server, servizio.

Solo lettura.

Esempiocontrollato con Leo
stampa(sincronizzazione_ora()["server"])

elenca_caratteri()Solo Windows#

I nomi dei caratteri (font) installati, in ordine alfabetico.

Esempiocontrollato con Leo
stampa(lunghezza(elenca_caratteri()), "caratteri installati")

carattere_installato(nome)Solo Windows#

vero se un carattere (font) con quel nome è installato.

Basta la famiglia: "Arial" trova anche "Arial Bold".

Esempiocontrollato con Leo
carattere_installato("Consolas")

info_processore()Solo Windows#

Il processore: nome, produttore, core, processori_logici, frequenza_mhz, bit.

Esempiocontrollato con Leo
stampa(info_processore()["nome"])

info_scheda_madre()Solo Windows#

La scheda madre e il BIOS: produttore, modello, versione, bios_produttore, bios_versione.

Esempiocontrollato con Leo
stampa(info_scheda_madre()["modello"])

info_schede_video()Solo Windows#

Le schede video (GPU): lista con nome, produttore, memoria, driver, risoluzione.

Esempiocontrollato con Leo
per ogni g in info_schede_video() fai stampa(g["nome"]) fine

info_computer()Solo Windows#

Il computer: nome, produttore, modello, memoria, sistema_operativo, versione...

Esempiocontrollato con Leo
variabile c = info_computer()stampa(c["produttore"], c["modello"])

dispositivi_usb()Solo Windows#

I dispositivi USB collegati: lista con nome, classe, stato, id.

Esempiocontrollato con Leo
per ogni d in dispositivi_usb() fai stampa(d["nome"]) fine