Archive for the ‘Windows tweak’ Category

Settare automaticamente un TV Samsung su ingresso HDMI via LAN o WiFi all’accensione del PC

giovedì, Ottobre 3rd, 2019

Vi è mai capitato di utilizzare un TV come monitor e di voler settare automaticamente l’ingresso su ingresso HDMI all’accensione del vostro PC? Ecco di seguito come fare con un TV Samsung! La procedura per cambiare sorgente dalla modalità TV normalmente richiederebbe quei 5-6 secondi col lentissimo menù OSD che per quanto pochi risultano tediosi e sprecati, soprattutto se avete fretta 😉

La procedura che vi spiegherò impiega un simpatico tool da linea di comando che si chiama “samsungctl” che vi permetterà di interfacciarvi facilmente con qualsiasi TV Samsung, sia i nuovi dal 2016 in avanti con sistema operativo Tizen (come il mio), sia quelli precedenti (non ho provato ma dovrebbe funzionare ugualmente).

Per prima cosa dovete aver installato il linguaggio Python se non l’avete già scaricatelo da python.org lanciando l’eseguibile con le opzioni di default, mi raccomando inoltre di settare le opzioni “install for all user” e “Add Python to PATH”. Per farlo funzionare senza errori è necessario avere settato anche le variabili d’ambiente “HOME” e “XDG_CONFIG_HOME”, per farlo andate dal pannello di controllo in “sistema”->”impotazioni avanzate”->”variabili d’ambiente”->”variabili di sistema”, fatele puntare entrambe alla vostra cartella utente o a quello che preferite, ma devono essere settate.

Ora potete installare samsungctl aprendo un prompt dos e lanciando il comando:

pip install samsungctl

Se python è stato installato correttamente ve lo installerà automaticamente, per funzionare con i TV dal 2016 in avanti è anche necessario lanciare:

pip install websocket-client

inoltre bisogna fare un’altra piccola modifica: dovete scaricare una versione modificata del file remote_websocket.py disponibile a questo link (salvatela con nome) e sovrascrivete l’omonimo file presente in C:\Program Files (x86)\Python37-32\Lib\site-packages\samsungctl\ (può variare a seconda di dove avete installato python).

A questo punto create un file di nome “samsungctl.conf” al path dove avete settato la variabile d’ambiente “XDG_CONFIG_HOME” con il seguente contenuto:

{
	"name": "samsungctl",
	"description": "PC",
	"id": "",
	"host": "IP_DELLA_VOSTRA_TV",
	"port": 8002,
	"method": "websocket",
	"timeout": 0
}

avendo cura di sostituire l’ip giusto del TV. Per modelli pre-2016 potrebbe essere necessario usare “legacy” al posto di “websocket” e la porta 8001 al posto di 8002.

A questo punto siete pronti: se lanciate questo da linea di comando avverrà la “magia” e il TV passerà automaticamente alla sorgente HDMI:

samsungctl KEY_HDMI

L’ultimo passaggio è far si che ciò avvenga quando il vostro PC parte (e ancor prima del login) per farlo vi basterà eseguire gpedit.msc andare in “configurazione computer”->”impostazioni di windows”->”script (avvio/arresto)”->”avvio” e linkare un file .bat dove avrete inserito il comando sopra.

Ecco fatto… ora ogni volta che accenderete il PC e la TV questa passerà automaticamente in HDMI! La procedura è stata testata in Windows 10 Pro, ma dovrebbe funzionare anche con versioni precedenti di Windows.

DOS Prompt here con UTF-8

martedì, Ottobre 18th, 2011

Recentemente mi è capitato di aver a che fare con script PHP eseguiti da prompt dei comandi su windows ed ho notato che i caratteri accentati non vengono correttamente visualizzati nella finestra dei comandi! Il problema sembra essere la gestione non standard da parte di windows dei caratteri UTF-8. Una possibile soluzione è questa modifica al tweak “apri DOS prompt qui” che ho proposto in un precedente post. Ecco il file .reg modificato da creare ed eseguire:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\shell\runas]
@="Apri finestra di comando elevata qui"
[HKEY_CLASSES_ROOT\Directory\shell\runas\command]
@="cmd.exe /s /k pushd \"%V\" && chcp 65001"
[HKEY_CLASSES_ROOT\Directory\Background\shell\runas]
@="Apri finestra di comando elevata qui"
[HKEY_CLASSES_ROOT\Directory\Background\shell\runas\command]
@="cmd.exe /s /k pushd \"%V\" && chcp 65001"
[HKEY_CLASSES_ROOT\Drive\shell\runas]
@="Apri finestra di comando elevata qui"
[HKEY_CLASSES_ROOT\Drive\shell\runas\command]
@="cmd.exe /s /k pushd \"%V\" && chcp 65001"

Bisogna inoltre assegnare al DOS prompt (tramite il menù delle proprietà) un carattere in grado di supportare i caratteri UTF-8, il “Lucida Console” è quello che uso io.

Utilizzare due istanze contemporanee di Firefox 4 su Windows 7

martedì, Maggio 10th, 2011

Questo tweak sarà di sicuro interesse per tutti gli sviluppatori web che vogliono eseguire due istanze contemporanee di Firefox (ad esempio una per la navigazione standard e una per lo sviluppo o con le impostazioni di default), ognuna con la sua icona sulla taskbar di Win7, con le sue tab, ecc. Ci ho messo un bel po’ a trovare una soluzione ma alla fine ce l’ho fatta 🙂 grazie al tool Win7AppId! Ma prima un po’ di “teoria”: come funziona il raggruppamento dei task di Windows 7? Esiste una proprietà chiamata “Application User Model ID” (abbreviata AppId), tutti i task con la stessa AppId vengono raggruppati, la AppId viene impostata dall’applicazione e/o dal collegamento che la lancia, Win7AppId modifica un collegamento esistente per impostare uno specifico AppId, ma questo purtroppo non basta per Firefox che si ostina a cambiare AppId subito dopo la partenza del programma per questo motivo serve anche un plug-in per Firefox che l’autore di Win7AppId ha gentilmente realizzato su mia richiesta!

Ma veniamo al dettaglio dei passaggi necessari:

  • scaricate Win7AppId ed il plug-in per Firefox versione >= 10: win7appid-ff4-profile-fixed2.zip (win7appid-ff4-profile-fixed.zip per Firefox < 10)
  • chiudete tutte le eventuali istanze aperte di Firefox e rimuovete eventuali Firefox “pinnati” alla taskbar
  • create un secondo profilo di Firefox se già non l’avete fatto (basta lanciare l’eseguibile del programma con parametro “-p”, il resto è intuitivo), io ho il profilo “primary” (di default) e “secondary”
  • scompattate il plug-in e copiatelo nella cartella globale delle estensioni di Firefox, che di solito è “Program Files\Mozilla Firefox\extensions” (da non confondersi con quella dei profili)
  • create 2 collegamenti dell’eseguibile di Firefox sul desktop (nel mio caso li ho nominati “firefox primary” e “firefox secondary”), per ogni profilo a parte il primo dovete anche editare il collegamento ed aggiungere i parametri “-p <nome-profilo> -no-remote” nel mio caso “-p secondary -no-remote” (secondo specifiche Mozilla l’istanza principale va sempre lanciata senza parametri)
  • se volete potete anche customizzare le icone dei link per distinguerle più facilmente
  • per concludere dovete utilizzare il tool Win7AppId vero e proprio per modificare i link che avete appena creato usando la notazione:

    Win7AppId1.1 "[nome-collegamento].lnk" [app-id-desiderato]

    nel mio caso:

    Win7AppId1.1 "firefox primary.lnk" Mozilla.Firefox.primary

    Win7AppId1.1 "firefox secondary.lnk" Mozilla.Firefox.secondary

  • ora non vi resta che trascinare i link sulla taskbar di windows 7 ed il gioco è fatto!

Due istanze separate di Firefox che sfruttano la stessa installazione, senza necessità di installazioni multiple o porcherie simili! 😉

Aggiornamento: questo tweak continua a funzionare anche con le nuove versioni di Firefox (al momento la 9) con un unico accorgimento: dopo ogni upgrade di Firefox è necessario rimuovere le icone pinnate e trascinare nuovamente i 2 link sulla barra e pinnarli nuovamente, non è necessario fare altro 😉

Aggiornamento: inserito nuovo plugin per Firefox versione 10

Program Files\Mozilla Firefox\extensions

DOS Prompt here (elevato) per Windows 7

lunedì, Maggio 24th, 2010

Windows 7 offre già un “apri finestra di comando qui” visualizzabile tenendo premuto shift prima del click con il tasto destro. Però può essere utile averlo sempre visibile (senza premere shift) ed anche elevato (di solito necessario per molte operazioni), l’opzione apparirà cliccando con il tasto destro sulle cartelle, sui drive e sugli spazi bianchi all’interno delle finestre delle directory; ecco il file .reg da creare ed eseguire:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\shell\runas]
@="Apri DOS prompt elevato qui"
[HKEY_CLASSES_ROOT\Directory\shell\runas\command]
@="cmd.exe /s /k pushd \"%V\""
[HKEY_CLASSES_ROOT\Directory\Background\shell\runas]
@="Apri DOS prompt elevato qui"
[HKEY_CLASSES_ROOT\Directory\Background\shell\runas\command]
@="cmd.exe /s /k pushd \"%V\""
[HKEY_CLASSES_ROOT\Drive\shell\runas]
@="Apri DOS prompt elevato qui"
[HKEY_CLASSES_ROOT\Drive\shell\runas\command]
@="cmd.exe /s /k pushd \"%V\""

Visualizzare con un solo click l’ultima finestra aperta di un gruppo di programmi su Windows 7

domenica, Maggio 23rd, 2010

Ebbene si, sono passato anche io a Windows 7 ! Devo dire che l’ultimo SO di casa Microsoft non è poi così malaccio, penso che sarà uno dei più longevi al pari di XP… Ma passiamo al dunque: la taskbar di Windows 7 porta molte nuove e interessanti caratteristiche ma commette, a mio parere, un gravissimo errore: nel caso di varie finestre di programmi raggruppati (come succede ad esempio con Internet Explorer o Firefox 3.6) un click sul pulsantone della taskbar visualizza solo le preview costringendoci ad un secondo click per selezionare quella che desideriamo visualizzare, mentre converrete con me che nel 99% dei casi si desidera tornare sempre all’ultima visualizzata in precedenza, come risolvere questa svista? I più scaltri di voi avranno scoperto che è possibile ottenere questo effetto tenendo premuto CTRL e cliccando sul pulsante, ma ovviamente sarebbe molto più comodo avere questo comportamento di default senza dover per forza premere anche dei tasti. Purtroppo non ho trovato nessuna impostazione del registro, ma solo questo programmino residente che però assolve perfettamente alla mia necessità e che vi consiglio vivamente: 7 Taskbar Tweaker permette vari tweak fra i quali anche quello che serviva a me! Aggiornamento: per ottenere la stessa funzionalità vi riporto il seguente tweak al registro di sistema che ho trovato sul numero di questo mese di PC Professionale, basta generare e lanciare il seguente file .reg:

Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
"LastActiveClick"=dword:00000001

NOTA: riavviare il sistema dopo la modifica al registro

Cambiare rapidamente le impostazioni di rete con il comando netsh

mercoledì, Marzo 10th, 2010

Questo suggerimento vi sarà particolarmente utile se vi capita spesso di dover riconfigurare manualmente le impostazioni di rete (ip, gateway, dns) della vostra scheda di rete o wi-fi. Prima di trovare questa soluzione ho provato almeno una decina di programmini ma avevano tutti dei problemi e sembrava davvero incredibile che non esistesse una soluzione più semplice… infatti eccola qua: il comando “semisconosciuto” netsh (che esiste fin da windows 2000) ci permette di campiare i parametri in un attimo da linea di comando.

Prima di farvi qualche esempio vi consiglio per semplicità di cambiare i (folli) nomi di default che windows da alle schede di rete (ad es “Connessione alla rete locale (LAN)”) per farlo vi basterà andare su XP in start->impostazioni->connessioni di rete, su Vista/7 in start->pannello di controllo->centro connessioni di rete->modifica impostazioni scheda; da qui potete rinominare le schede in qualcosa di più umano, negli esempi seguenti il nome della scheda sarà semplicemente “LAN”.

veniamo agli esempi di utilizzo del comando netsh:

per settare un IP statico bastano questi 3 comandi:
netsh interface ip set address LAN static 192.168.0.181 255.255.255.0 192.168.0.254 1
(i 3 indirizzi ip sono rispettivamente ip della macchina, netmask, gateway; ricordarsi l’ 1 finale)
e per settare i DNS statici:
netsh interface ip set dns LAN static 192.168.0.254
netsh interface ip add dns LAN 192.168.0.253
(notare la differenza fra il dns primario e secondario)

per settare l’uso del DHCP:
netsh interface ip set address LAN dhcp
netsh interface ip set dns LAN dhcp

per abilitare o disabilitare la scheda:
netsh interface set interface LAN ENABLED
netsh interface set interface LAN DISABLED

Potete anche inserire questi comandi in un file .bat per velocizzare il tutto (ricordatevi di eseguirlo con i i diritti da amministratore)

PS: netsh dispone di molte altre opzioni, potete divertirvi a scoprirle se volete 😉

Impostare rapidamente la reply di Outlook 2007 da R: a Re:

lunedì, Novembre 23rd, 2009

Come sicuramente saprete per eliminare il fastidioso problema dei vari Outlook che di default antepongono “R:” alle risposte al posto dello standard “Re:” basta cliccare la seguente opzione:

“Strumenti” -> “Opzioni” -> “Formato posta” -> “Opzioni internazionali” -> “Utilizza inglese per intestazione di risposta o inoltro”.

Quello che forse non sapete è che per farlo rapidamente si può generare e lanciare il seguente file .reg:

Windows Registry Editor Version 5.00
[HKEY_CURRENT_USERSoftwareMicrosoftOffice12.0OutlookPreferences]
"ENMessageHeaders"=dword:00000001

Fatelo lanciare a tutti i vostri amici che hanno Outlook! 😛
L’ho testato solo con Outlook 2007, probabilmente per il 2003 basta scrivere 11.0 invece di 12.0, fatemi sapere!

Patch per avere i bottoni di XP nella status bar di Chrome

giovedì, Novembre 12th, 2009

Nel precedente post avevo trattato una soluzione rapida al problema dei bottoni della status bar di Chrome che non erano “giusti” in Windows XP, che consisteva nella modifica manuale del file Themes\default.dll

chrome normal prima

chrome xp dopo

Questa soluzione era però difficilmente utilizzabile perchè ad ogni aggiornamento del browser la suddetta dll veniva sempre sovrascritta con una nuova versione e bisognava ripetere la procedura di certo non rapida.

Ho quindi pensato ad una soluzione più semplice che consiste in uno script “one click” che rileva l’ultima installazione di chrome e patcha automaticamente la dll tramite l’utility freeware Resource Hacker.

Ovviamente bisogna ricordarsi di lanciare la patch dopo ogni aggiornamento di Chrome ma si tratta di una operazione velocissima e molto semplice! L’ho testata con Chrome 4.0.223.16 ma dovrebbe funzionare anche con le versioni future.

Aggiornamento: dalla versione 4.0.237.0 Google ha pensato bene di spostare le icone dei bottoni dal file default.dll a chrome.dll quindi è stato necessario creare una nuova versione della patch

Scarica Chrome XP Buttons Patch (Rev B) (per Chrome da 4.0.237.0 in su)

Scarica Chrome XP Buttons Patch (per Chrome inferiore a 4.0.237.0)

Tema per Chrome con i bottoni giusti per XP

venerdì, Settembre 11th, 2009

Chi utilizza il browser Chrome su XP avrà notato che i bottoni della finestra sono forzatamente visualizzati nella modalità grafica di Windows Vista, se fosse solo una questione grafica sarebbe sopportabile ma hanno anche una posizione diversa! Quindi ad esempio se si minimizzano rapidamente varie fineste spesso capita di cliccare il bottone sbagliato su Chrome!

chrome normal

I bottoni della finestra di Chrome sono salvati nel file del tema grafico, quindi ho provveduto a creare un tema partendo da quello originale che preveda i bottoni giusti per XP.

chrome xp

Il tema di Chrome in uso è salvato in questo file

C:\Documents and Settings\<nome utente>\Impostazioni locali\Dati applicazioni\Google\Chrome\Application\<versione chrome>\Themes\default.dll

nel mio caso la versione di Chrome è la 3.0.195.17 (canale Dev)

la dll è editabile e modificabile con il programmino shareware Resource Tuner (purtroppo non con il freeware Resource Hacker), basta semplicemente editare (doppio click) le icone presenti in “BINDATA” e sostituirle con immagini PNG giuste, che io ho recuperato direttamente da alcuni screen capture.

Zip con la dll modificata, attenzione potrebbe non funzionare con versioni successive o precedenti di Chrome, ricordate di backuppare quella originale.

Zip con le sole immagini, se volete fare le vostre prove.

Soluzione al problema di utente forzato a Guest da XP all’accesso ad una cartella condivisa Samba

mercoledì, Febbraio 18th, 2009

samba guestProbabilmente vi sarà capitato qualche volta di accedere ad una cartella condivisa remota e notare con disappunto che nella richiesta credenziali l’utente viene forzato dal sistema operativo a Guest (grigetto non modificabile).

Ho appurato che questo accade sempre quando lato server c’e’ un Samba con “security = share” e l’utente presente sul client XP non combacia con un utente di quelli presenti sul server.

Ho visto che una soluzione comune adottata da altre persone è quella di creare un disco virtuale con l’opzione strumenti -> “connetti unità di rete”, specificando l’utente corretto.

Se invece si desidera una soluzione più trasparente ho scoperto un settaggio un po’ nascosto ma perfetto: dal pannello di controllo bisogna accedere ad “account utente”, cliccare sul proprio utente, “gestione password di rete”, “aggiungi”, specifcare il nome esatto del server, nome utente e password (nota: il nome utente deve essere obbligatoriamente nel formato “nomeserver\nomeutente”). Dopo questo settaggio il box di richiesta credenziali apparirà sempre con l’utente grigetto ma questa volta sarà l’utente giusto!