<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;DU8FQ3o8fyp7ImA9WhRVFEo.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062</id><updated>2012-01-13T19:03:32.477+01:00</updated><category term="android" /><category term="wiki" /><category term="java" /><category term="git" /><category term="news" /><category term="web" /><category term="symbian" /><category term="tips and tricks" /><category term="server" /><category term="streaming" /><category term="mac os x" /><category term="windows" /><category term="programmazione" /><category term="hacking" /><category term="how-to" /><category term="dbms" /><category term="hardware" /><category term="svn" /><title>Just Share It !</title><subtitle type="html">...un blog in cui condividere liberamente la propria conoscenza... 
uno spazio in cui poter condividere con gli altri le proprie passioni...</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://just-share-it.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>31</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/JustShareIt" /><feedburner:info uri="justshareit" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;DU8FQ3ozcCp7ImA9WhRVFEo.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-7317099789442658133</id><published>2012-01-13T18:58:00.002+01:00</published><updated>2012-01-13T19:03:32.488+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-13T19:03:32.488+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="mac os x" /><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><category scheme="http://www.blogger.com/atom/ns#" term="android" /><title>Cosa fare quando il device Android non viene riconosciuto</title><content type="html">In alcuni casi l'&lt;b&gt;Android Virtual Device Manager&lt;/b&gt; potrebbe non riconoscere, e quindi non visualizzare in elenco, un particolare dispositivo Android collegato tramite cavo USB.&lt;br /&gt;
Dopo essersi assicurati che sul dispositivo sia stata abilitata l'opzione &lt;b&gt;Debug USB &lt;/b&gt;presente nel menu &lt;b&gt;Impostazioni &amp;gt; Applicazioni &amp;gt; Sviluppo&lt;/b&gt;&amp;nbsp;bisogna assicurarsi che l'&lt;b&gt;USB vendor&lt;/b&gt;&amp;nbsp;del dispositivo sia uno di quelli presenti in questo elenco&amp;nbsp;&lt;a href="http://developer.android.com/guide/developing/device.html"&gt;http://developer.android.com/guide/developing/device.html&lt;/a&gt;.&lt;br /&gt;
Se così non fosse occorre risalire all'&lt;b&gt;USB&amp;nbsp;vendor ID&lt;/b&gt; del dispositivo, effettuando qualche ricerca mirata su Internet, e inserirlo in un nuova riga in coda al file &lt;b&gt;adb_usb.ini&lt;/b&gt;&amp;nbsp;presente nella &lt;i&gt;home directory&lt;/i&gt; dentro la cartella &lt;b&gt;.android&lt;/b&gt;&amp;nbsp;(su Mac il percorso completo è &lt;b&gt;~/.android/adb_usb.ini&lt;/b&gt;).&lt;br /&gt;
&lt;br /&gt;
Nel caso del tablet &lt;b&gt;Olivetti Olipad&lt;/b&gt;, ad esempio, l'&lt;b&gt;USB&lt;/b&gt;&amp;nbsp;&lt;b&gt;vendor&lt;/b&gt; è&amp;nbsp;&lt;b&gt;&lt;i&gt;Quanta Computer, Inc.&lt;/i&gt;&amp;nbsp;&lt;/b&gt;e l'&lt;b&gt;USB&lt;/b&gt;&amp;nbsp;&lt;b&gt;vendor ID&lt;/b&gt;, trovato sul sito&amp;nbsp;&lt;a href="http://cateee.net/lkddb/web-lkddb/USB_SERIAL_OPTION.html"&gt;http://cateee.net/lkddb/web-lkddb/USB_SERIAL_OPTION.html&lt;/a&gt;,&amp;nbsp;risulta essere&amp;nbsp;&lt;b&gt;0x0408&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Una volta aggiunta la riga nel file&amp;nbsp;&lt;b&gt;adb_usb.ini &lt;/b&gt;occorre riavviare il server &lt;b&gt;adb&lt;/b&gt; con i seguenti comandi:&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;adb kill-server&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;adb start-server&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: inherit;"&gt;A questo punto eseguendo il comando &lt;/span&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;adb devices&lt;/span&gt;&lt;span style="font-family: inherit;"&gt; il dispositivo dovrebbe comparire in elenco!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-7317099789442658133?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/RK3U7tXmJttoVCU1zRQTYSh99u8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RK3U7tXmJttoVCU1zRQTYSh99u8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/RK3U7tXmJttoVCU1zRQTYSh99u8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RK3U7tXmJttoVCU1zRQTYSh99u8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/zTmE1goay-k" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/7317099789442658133/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=7317099789442658133" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/7317099789442658133?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/7317099789442658133?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/zTmE1goay-k/android-device-non-riconosciuto.html" title="Cosa fare quando il device Android non viene riconosciuto" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2012/01/android-device-non-riconosciuto.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck4GQHY8fSp7ImA9WhRVEU4.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-2001882890570403211</id><published>2012-01-09T18:40:00.001+01:00</published><updated>2012-01-09T18:42:01.875+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-09T18:42:01.875+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><category scheme="http://www.blogger.com/atom/ns#" term="web" /><title>Come contattare il call-center AirOne spendendo poco</title><content type="html">Dovete contattare il call center di &lt;b&gt;Air One&lt;/b&gt; per modificare la prenotazione di un volo all'ultimo secondo?&lt;br /&gt;
Vi hanno annullato il volo e siete costretti a chiamare il famigerato &lt;b&gt;892444&lt;/b&gt; per chiedere il rimborso?&lt;br /&gt;
State sudando freddo perché avete letto tra le &lt;a href="http://flyairone.com/IT-IT/assistenza/contatti.aspx" target="_blank"&gt;note in appendice&lt;/a&gt; che il costo della chiamata può arrivare a &lt;b&gt;1,8 €&lt;/b&gt;&amp;nbsp;al minuto + scatto alla risposta e vorreste poter spiegare tutto all'operatore in meno di 30 secondi?!&lt;br /&gt;
&lt;br /&gt;
Credete in&amp;nbsp;&lt;b&gt;Google&lt;/b&gt;??? Non ancora?! Tranquilli, a breve vi convertirete!&lt;br /&gt;
&lt;br /&gt;
Se non l'avete ancora, createvi subito un account &lt;a href="http://www.google.com/googlevoice/about.html" style="font-weight: bold;" target="_blank"&gt;Google Voice&lt;/a&gt;&amp;nbsp;e fate una ricarica.. di quanto?! &lt;b&gt;1euro&lt;/b&gt; può bastare!&lt;br /&gt;
Per chiamate "effettuate al di fuori dei confini italiani" è disponibile, infatti, un numero alternativo all'&lt;b&gt;892 444&lt;/b&gt; ovvero il&amp;nbsp;&lt;b&gt;+390912551047&lt;/b&gt;. Chiamando con il proprio cellulare o dal telefono di casa il numero risulterà disabilitato. Tuttavia, chiamando questo numero tramite il vostro account Google Voice la chiamata verrà inoltrata correttamente e, dopo la solita attesa, sarete messi in contatto con un'operatrice del call-center. A questo punto se dovesse rispondervi un uomo potrete permettevi anche di riagganciare e richiamare!! Sì, perché il costo della chiamata, esponendo il vostro problema in tutta calma e tranquillità non eccederà probabilmente neppure i 10 centesimi!&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-RMNgh7dAIjs/TwsmT0mprYI/AAAAAAAAnVQ/LhzDqp2tZC4/s1600/googlevoice.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="332" src="http://2.bp.blogspot.com/-RMNgh7dAIjs/TwsmT0mprYI/AAAAAAAAnVQ/LhzDqp2tZC4/s640/googlevoice.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Almeno così è fino ad oggi, se qualcosa dovesse cambiare avvisatemi! ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-2001882890570403211?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/G1V1REN1fYpEF6k9Mwrn_VZJA_w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/G1V1REN1fYpEF6k9Mwrn_VZJA_w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/G1V1REN1fYpEF6k9Mwrn_VZJA_w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/G1V1REN1fYpEF6k9Mwrn_VZJA_w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/1aWbZWFJOgI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/2001882890570403211/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=2001882890570403211" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/2001882890570403211?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/2001882890570403211?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/1aWbZWFJOgI/alternativa-basso-costo-892444-airone.html" title="Come contattare il call-center AirOne spendendo poco" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-RMNgh7dAIjs/TwsmT0mprYI/AAAAAAAAnVQ/LhzDqp2tZC4/s72-c/googlevoice.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2012/01/alternativa-basso-costo-892444-airone.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEQCQXk5cSp7ImA9WhRWF0Q.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-1775669744542931181</id><published>2012-01-05T15:27:00.000+01:00</published><updated>2012-01-05T20:39:20.729+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-05T20:39:20.729+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="git" /><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><title>Un esempio di branching, rebasing e cherry picking con Git</title><content type="html">Lo scenario che verrà rappresentato è quello di un generico progetto mantenuto su un repository &lt;b&gt;Git&lt;/b&gt;, per il quale si rende necessaria la creazione di un &lt;i&gt;branch&lt;/i&gt; per lo sviluppo di una personalizzazione del prodotto. Durante l'implementazione&amp;nbsp;si suppone venga effettuata&amp;nbsp;sul&amp;nbsp;&lt;i&gt;branch&lt;/i&gt;&amp;nbsp;una&amp;nbsp;&lt;i&gt;commit&lt;/i&gt;&amp;nbsp;che si sarebbe invece potuta/dovuta effettuare sul progetto &lt;i&gt;master&lt;/i&gt;&amp;nbsp;in quanto contenente delle modifiche di interesse generale.&amp;nbsp;Nel frattempo sul progetto &lt;i&gt;master&lt;/i&gt;&amp;nbsp;si suppone vengano corretti alcuni &lt;i&gt;bugs&lt;/i&gt;&amp;nbsp;e/o integrate nuove funzioni che si vogliono riportare anche nel &lt;i&gt;branch&lt;/i&gt;.&lt;br /&gt;
Si potrebbe pensare, ad esempio, al progetto di un prodotto che andrà personalizzato per più Clienti e per il quale, durante lo sviluppo - in un &lt;i&gt;branch&lt;/i&gt; - di una di queste personalizzazioni, venga implementata una caratteristica del prodotto che potrebbe interessare anche gli altri Clienti e che si vuole quindi riportare nel progetto generale.&lt;br /&gt;
&lt;div&gt;
Supponiamo quindi che dopo aver creato un&amp;nbsp;&lt;i&gt;branch&lt;/i&gt;&amp;nbsp;per il Cliente &lt;b&gt;c1&lt;/b&gt; vengano effettuate alcune &lt;i&gt;commit&lt;/i&gt; sia sul &lt;i&gt;branch_c1&lt;/i&gt;&amp;nbsp;che sul progetto &lt;i&gt;master&lt;/i&gt;, così come riportato di seguito:&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;C---D---F branch_c1&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;/&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;A---B---E---G master&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
Quello che si vuole ottenere, quindi, è che le &lt;i&gt;commit&lt;/i&gt; &lt;b&gt;E&lt;/b&gt; e &lt;b&gt;G&lt;/b&gt;, da immaginarsi ad esempio come&amp;nbsp;possibili &lt;i&gt;bug fixes&lt;/i&gt;,&amp;nbsp;vengano integrate&amp;nbsp;anche nel&amp;nbsp;&lt;i&gt;branch&lt;/i&gt;&amp;nbsp;mentre la sola&amp;nbsp;&lt;i&gt;commit&lt;/i&gt;&amp;nbsp;&lt;b&gt;D&lt;/b&gt;, da immaginarsi ad esempio come la realizzazione di una&amp;nbsp;&lt;i&gt;feature&lt;/i&gt;&amp;nbsp;di interesse generale, venga inglobata nel progetto &lt;i&gt;master&lt;/i&gt;.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Il primo passo consiste nel &lt;b&gt;rebasing&lt;/b&gt; del&amp;nbsp;&lt;i&gt;branch_c1&lt;/i&gt; in&amp;nbsp;&lt;i&gt;master&lt;/i&gt; in modo da ottenere il seguente risultato:&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;C'---D'---&lt;/span&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;F' branch_c1&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;A---B---&lt;/span&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;E---G master&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
Quello che avviene è che le &lt;i&gt;commit&lt;/i&gt; &lt;b&gt;C&lt;/b&gt;, &lt;b&gt;D&lt;/b&gt; ed &lt;b&gt;F&lt;/b&gt;&amp;nbsp;vengono eseguite nuovamente a partire dall'attuale &lt;i&gt;master&lt;/i&gt;, una ad una,&lt;i&gt;&amp;nbsp;&lt;/i&gt;preservando quindi le precedenti &lt;i&gt;commit&lt;/i&gt;&amp;nbsp;(che non saranno comunque più visibili in quanto non appartenenti più a nessun &lt;i&gt;branch&lt;/i&gt;) e risultando a tutti gli effetti come nuove&lt;i&gt;&amp;nbsp;&lt;/i&gt;(chiamate per questo motivo &lt;b&gt;C'&lt;/b&gt;, &lt;b&gt;D'&lt;/b&gt; ed &lt;b&gt;F'&lt;/b&gt;).&lt;br /&gt;
Per eseguire l'operazione proposta è necessario che&amp;nbsp;&lt;i&gt;branch_c1&lt;/i&gt;&amp;nbsp;sia&amp;nbsp;&lt;b&gt;HEAD&lt;/b&gt;&amp;nbsp;(ovvero il&amp;nbsp;&lt;i&gt;checked out branch&lt;/i&gt;) e che l'operazione&amp;nbsp;&lt;b&gt;rebase&lt;/b&gt;&amp;nbsp;venga effettuata selezionando il &lt;i&gt;repository node&lt;/i&gt;&amp;nbsp;&lt;i&gt;master&lt;/i&gt;&amp;nbsp;dalla&amp;nbsp;&lt;i&gt;Git Repositories View&lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
In questo momento abbiamo raggiunto il primo degli obiettivi, ovvero quello di inglobare le commit &lt;b&gt;E&lt;/b&gt; e &lt;b&gt;G&lt;/b&gt; nel &lt;i&gt;branch&lt;/i&gt;: nell'esempio proposto i &lt;i&gt;bug fixes&lt;/i&gt;&amp;nbsp;sono stati quindi inclusi anche nella personalizzazione del prodotto per il Cliente&lt;b&gt;&amp;nbsp;c1&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
A questo punto, per il secondo obiettivo, occorre un&amp;nbsp;&lt;b&gt;cherry picking&amp;nbsp;&lt;/b&gt;della &lt;i&gt;commit&lt;/i&gt; &lt;b&gt;D'&lt;/b&gt; su &lt;i&gt;master &lt;/i&gt;in modo da ottenere il seguente risultato:&lt;br /&gt;
&lt;div&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;C'---D'---&lt;/span&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;F' branch_c1&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;/&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;A---B---&lt;/span&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;E---G---D' master&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
Quello che avviene è che la commit &lt;b&gt;D'&lt;/b&gt; viene eseguita sull'attuale master riportando in tal modo tutte le modifiche che conteneva: nell'esempio proposto la particolare &lt;i&gt;feature&lt;/i&gt;&amp;nbsp;di interesse generale, realizzata durante lo sviluppo del &lt;i&gt;branch&lt;/i&gt;, viene inglobata nel progetto principale.&lt;br /&gt;
Per eseguire l'operazione proposta è necessario che &lt;i&gt;master&lt;/i&gt; sia &lt;b&gt;HEAD&lt;/b&gt; (ovvero il &lt;i&gt;checked out branch&lt;/i&gt;) e che l'operazione &lt;b&gt;cherry-pick&lt;/b&gt;&amp;nbsp;venga effettuata selezionando la &lt;i&gt;commit&lt;/i&gt; &lt;b&gt;D'&lt;/b&gt;&amp;nbsp;dalla &lt;i&gt;History View&lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Links&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://wiki.eclipse.org/EGit/User_Guide/One_page#Branching"&gt;http://wiki.eclipse.org/EGit/User_Guide/One_page#Branching&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://wiki.eclipse.org/EGit/User_Guide/One_page#Rebasing"&gt;http://wiki.eclipse.org/EGit/User_Guide/One_page#Rebasing&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://wiki.eclipse.org/EGit/User_Guide/One_page#Cherry_Picking"&gt;http://wiki.eclipse.org/EGit/User_Guide/One_page#Cherry_Picking&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-1775669744542931181?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/JWk2VisNJIPXEWftkVMeQhaAESo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JWk2VisNJIPXEWftkVMeQhaAESo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/JWk2VisNJIPXEWftkVMeQhaAESo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JWk2VisNJIPXEWftkVMeQhaAESo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/SmSknipk0Y4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/1775669744542931181/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=1775669744542931181" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/1775669744542931181?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/1775669744542931181?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/SmSknipk0Y4/git-branching-rebasing-e-cherry-picking.html" title="Un esempio di branching, rebasing e cherry picking con Git" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2012/01/git-branching-rebasing-e-cherry-picking.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cNQHoyfSp7ImA9WhRWFk4.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-5113336262037569307</id><published>2012-01-04T00:45:00.000+01:00</published><updated>2012-01-04T00:58:11.495+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-04T00:58:11.495+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="mac os x" /><category scheme="http://www.blogger.com/atom/ns#" term="git" /><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><title>Come risolvere i problemi di autenticazione SSH su repository git con EGit su Eclipse</title><content type="html">La configurazione delle chiavi private con &lt;b&gt;EGit&lt;/b&gt; può creare qualche problema durante la connessione &lt;b&gt;SSH&lt;/b&gt; col server &lt;b&gt;Git&lt;/b&gt;.&lt;br /&gt;
Un errore abbastanza comune è il seguente:&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;Cannot get remote repository refs.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;Reason:&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;ssh://git@your-git-server.com:22: Passphrase for ...\.ssh\your-private-key&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Il problema è legato alla &lt;i&gt;passphrase&lt;/i&gt; specificata in fase di creazione della chiave privata che non viene richiesta all'utente per essere utilizzata durante la connessione ssh col server, come invece dovrebbe essere.&lt;br /&gt;
Su &lt;b&gt;OSX Leopard&lt;/b&gt; e successivi, una possibile soluzione al problema consiste nel definire una variabile d'ambiente che forzi l'utilizzo del comando &lt;b&gt;ssh&lt;/b&gt; di sistema in modo da utilizzare &lt;b&gt;ssh-agent&lt;/b&gt; e la sua &lt;b style="font-style: italic;"&gt;keychain&amp;nbsp;&lt;/b&gt;per gestire le chiavi private, inserendo quindi una volta per tutte la &lt;i&gt;passphrase&lt;/i&gt; associata alle chiavi.&lt;br /&gt;
Per impostare la variabile d'ambiente - in modo permanente - basta eseguire da terminale&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;cd ~&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;echo "export GIT_SSH=/usr/bin/ssh" &amp;gt;&amp;gt; .profile&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Se la posizione e/o il nome delle chiavi private differisce rispetto a quelle di default (&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;~/.ssh/id_rsa&lt;/span&gt;, &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;~/.ssh/id_dsa&lt;/span&gt; e &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;~/.ssh/identity&lt;/span&gt;) occorre aggiungerle esplicitamente con il comando:&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;ssh-add your-path/.../your-private-key&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Se il comando dovesse fallire con un messaggio di errore simile al seguente&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;Permissions 0644 for '&lt;/span&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;your-path/.../your-private-key&lt;/span&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;' are too open.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;It is recommended that your private key files are NOT accessible by others.&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;This private key will be ignored.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
occorre modificare i permessi del file in modo da concedere la lettura/scrittura al solo utente proprietario, eseguendo il comando:&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;chmod 600 your-path/.../your-private-key&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Bisogna stare attenti, infine, a non aggiungere alla &lt;i&gt;keychain&lt;/i&gt; più chiavi relative allo stesso host&amp;nbsp;&lt;b&gt;Git&lt;/b&gt;, soprattutto se riferite ad account diversi, in quanto potrebbero causare errori di autenticazione del tipo &lt;i&gt;"Permission denied (publickey)"&lt;/i&gt;; se ciò dovesse avvenire, verificare le chiavi presenti nella catena utilizzando il comando &lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;ssh-add -l&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
o, più specificatamente, quelle utilizzate verso uno specifico host Git con il comando&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;ssh -vT git@host-git.com&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
e rimuovere eventualmente la chiave indesiderata con il comando&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;ssh-add -d your-path/.../your-private-key-to-remove-from-keychain&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Dopo aver effettuato queste operazioni sarà sufficiente [ri]avviare Eclipse e tentare nuovamente l'operazione di &lt;i&gt;push&lt;/i&gt; con &lt;b&gt;EGit&lt;/b&gt; che, a questo punto,&amp;nbsp;non dovrebbe&amp;nbsp;generare più alcun errore, si spera!&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Links:&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&lt;a href="http://help.github.com/ssh-issues/"&gt;http://help.github.com/ssh-issues/&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://help.github.com/ssh-key-passphrases/"&gt;http://help.github.com/ssh-key-passphrases/&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://stackoverflow.com/questions/6316014/egit-ssh-fails-at-passphrase-when-connecting-to-github"&gt;http://stackoverflow.com/questions/6316014/egit-ssh-fails-at-passphrase-when-connecting-to-github&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://stackoverflow.com/questions/3601805/auth-problem-with-egit-and-github"&gt;http://stackoverflow.com/questions/3601805/auth-problem-with-egit-and-github&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://it.wikipedia.org/wiki/Chmod"&gt;http://it.wikipedia.org/wiki/Chmod&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://wiki.eclipse.org/EGit/User_Guide#Push_Upstream"&gt;http://wiki.eclipse.org/EGit/User_Guide#Push_Upstream&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-5113336262037569307?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1fiU-1U18GD18ROa_bWEpe8AgGI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1fiU-1U18GD18ROa_bWEpe8AgGI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1fiU-1U18GD18ROa_bWEpe8AgGI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1fiU-1U18GD18ROa_bWEpe8AgGI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/whvWQSoPWDo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/5113336262037569307/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=5113336262037569307" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/5113336262037569307?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/5113336262037569307?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/whvWQSoPWDo/push-upstream-con-egit-su-eclipse.html" title="Come risolvere i problemi di autenticazione SSH su repository git con EGit su Eclipse" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2012/01/push-upstream-con-egit-su-eclipse.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkcAQ3k4eyp7ImA9WhRXEUs.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-2963158342818643506</id><published>2011-12-17T22:52:00.000+01:00</published><updated>2011-12-17T23:14:02.733+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-17T23:14:02.733+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><category scheme="http://www.blogger.com/atom/ns#" term="android" /><title>Come cambiare il separatore delle migliaia in Java</title><content type="html">Su Android, per la formattazione dei testi, conviene utilizzare il metodo Java&amp;nbsp;&lt;a href="http://developer.android.com/reference/java/lang/String.html#format%28java.lang.String,%20java.lang.Object...%29" target="_blank"&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;String.format(String, Object...)&lt;/span&gt;&lt;/a&gt;&amp;nbsp;in cui il primo parametro è una 'format string' che supporta &lt;a href="http://developer.android.com/reference/java/util/Formatter.html" target="_blank"&gt;diversi flags&lt;/a&gt;.&lt;br /&gt;
Il flag per il separatore delle migliaia è la virgola "&lt;b&gt;,&lt;/b&gt;"&lt;br /&gt;
Per formattare un numero in modo da includere il separatore delle migliaia è sufficiente quindi scrivere:&lt;br /&gt;
&lt;pre class="brush: java; light: false" name="code"&gt;String.format("%,d", (int)(Math.random() * 100000000))&lt;/pre&gt;
In questo modo il separatore delle migliaia che verrà utilizzato sarà quello specifico del &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;Locale&lt;/span&gt; in cui viene eseguita l'applicazione.&lt;br /&gt;
Per personalizzare il carattere (ad esempio sostituendolo con un semplice spazio al posto della virgola) è invece necessario procedere nel seguente modo:&lt;br /&gt;
&lt;pre class="brush: java; light: false" name="code"&gt;DecimalFormatSymbols dfs = new DecimalFormatSymbols();
dfs.setGroupingSeparator(' ');
DecimalFormat df = new DecimalFormat("###,###", dfs);
df.format(Math.random() * 100000000);&lt;/pre&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;a href="http://stackoverflow.com/questions/8547118/adding-a-space-between-a-number-with-settext/8547425#8547425"&gt;http://stackoverflow.com/questions/8547118/adding-a-space-between-a-number-with-settext/8547425#8547425&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-2963158342818643506?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/OoK4VeKTweiBlR0iNBiJX2a0EPA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OoK4VeKTweiBlR0iNBiJX2a0EPA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/OoK4VeKTweiBlR0iNBiJX2a0EPA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OoK4VeKTweiBlR0iNBiJX2a0EPA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/UBwmTio1rjc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/2963158342818643506/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=2963158342818643506" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/2963158342818643506?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/2963158342818643506?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/UBwmTio1rjc/come-cambiare-separatore-migliaia.html" title="Come cambiare il separatore delle migliaia in Java" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2011/12/come-cambiare-separatore-migliaia.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk4ESH09eyp7ImA9WhdTE0U.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-7319380675477023065</id><published>2011-07-11T13:48:00.000+02:00</published><updated>2011-07-11T13:48:29.363+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-11T13:48:29.363+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="programmazione" /><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="tips and tricks" /><title>Chi l'ha detto che 2 + 2 fa 4?!</title><content type="html">&lt;pre class="brush: java" name="code"&gt;new Thread(){
&amp;nbsp;public void run(){
&amp;nbsp; &amp;nbsp;while(true){
&amp;nbsp; &amp;nbsp; &amp;nbsp;try{
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Field field = Integer.class.getDeclaredField("value");
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;field.setAccessible(true);
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;field.setInt(Integer.valueOf(2), (int)(Math.random() * 10));
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Thread.sleep(1000);
&amp;nbsp; &amp;nbsp; &amp;nbsp;}catch(Throwable t){}
&amp;nbsp; &amp;nbsp;}
&amp;nbsp;}
}.start();

Integer a = 2;
System.out.println(a + a);
&lt;/pre&gt;&lt;br /&gt;
E se proprio non siete convinti..&lt;br /&gt;
&lt;pre class="brush: java" name="code"&gt;int res;
do{
&amp;nbsp; try{ Thread.sleep(2000); }catch(InterruptedException e){}
&amp;nbsp; System.out.println("2 + 2 = " + (res = a + a));
}while(res != 4);
&lt;/pre&gt;Attenzione a fidarsi delle &lt;a href="http://java.sun.com/docs/books/jls/third_edition/html/conversions.html#5.1.7"&gt;boxing conversions&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-7319380675477023065?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/aHHRQKDCceXDfQ1VCgL_HRmTrZk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aHHRQKDCceXDfQ1VCgL_HRmTrZk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/aHHRQKDCceXDfQ1VCgL_HRmTrZk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aHHRQKDCceXDfQ1VCgL_HRmTrZk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/VZVIrn8Hi0E" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/7319380675477023065/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=7319380675477023065" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/7319380675477023065?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/7319380675477023065?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/VZVIrn8Hi0E/chi-lha-detto-che-2-2-fa-4.html" title="Chi l'ha detto che 2 + 2 fa 4?!" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2011/07/chi-lha-detto-che-2-2-fa-4.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkYMRH07eip7ImA9WhRWF0Q.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-588299727098926632</id><published>2011-04-15T15:10:00.001+02:00</published><updated>2012-01-05T21:09:45.302+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-05T21:09:45.302+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><category scheme="http://www.blogger.com/atom/ns#" term="windows" /><title>Come spostare la cartella utenti di Windows</title><content type="html">E' buona norma mantenere i propri dati personali in una partizione diversa da quella del sistema operativo. Le motivazioni sono molteplici e vanno dalla maggiore possibilità di recupero dei dati in caso di danneggiamento della partizione primaria (causati spesso da virus ma anche da possibili malfunzionamenti del sistema operativo), alla condivisione di documenti con altri sistemi operativi.&lt;br /&gt;
Mentre in alcuni sistemi operativi, vedi &lt;b&gt;Linux&lt;/b&gt;, è consentito scegliere già durante l'installazione una possibile partizione alternativa in cui memorizzare i dati dell'utente, in altri, vedi &lt;b&gt;Windows&lt;/b&gt;, questa possibilità non solo non è prevista in fase di installazione ma è resa altresì difficoltosa e snervante anche in seguito.&lt;br /&gt;
Dopo essere stati costretti per anni ad intervenire sulle chiavi di registro di Windows per riuscire a spostare in qualche modo la cartella &lt;b&gt;&lt;i&gt;Documenti&lt;/i&gt;&lt;/b&gt; in una posizione alternativa a &lt;b&gt;C:\ ...&lt;/b&gt;, ci siamo dovuti prima accontentare, con &lt;b&gt;Windows Vista&lt;/b&gt;, e quindi rassegnare, con &lt;b&gt;Windows 7&lt;/b&gt;, alla ridotta e inefficiente funzionalità &lt;i&gt;"Percorso"&lt;/i&gt; introdotta in queste ultime due versioni di Windows ma che risponde solo in parte alle aspettative. Il problema è che ancora oggi non è possibile spostare interamente la directory &lt;i&gt;C:\Users\UserName&lt;/i&gt;&amp;nbsp;(alias&amp;nbsp;&lt;i&gt;C:\Utenti\NomeUtente&lt;/i&gt;) ma è possibile intervenire solo su alcune sottocartelle. Per spostarle altrove bisogna visualizzare singolarmente le &lt;i&gt;Proprietà&lt;/i&gt; di ognuna di queste sottocartelle, andare nel&amp;nbsp;tab &lt;i&gt;Percorso,&lt;/i&gt;&amp;nbsp;cliccare sul pulsante &lt;i&gt;Sposta...&lt;/i&gt;&amp;nbsp;e scegliere una nuova cartella.&lt;br /&gt;
Il problema, a questo punto, diventa quello di ricreare - dove desiderato - la struttura della cartella &lt;i&gt;UserName&lt;/i&gt;,&lt;i&gt;&amp;nbsp;&lt;/i&gt;in modo da poter quindi effettuare questi spostamenti. Per creare una copia fedele di queste cartelle, però, non è sufficiente un tasto destro del mouse e l'opzione "Nuovo" &amp;gt; "Cartella". In questo modo, infatti, le nuove directories non avranno gli stessi attributi e permessi di quelle originali.&lt;br /&gt;
Un modo rapido e alternativo è quello di utilizzare, da terminale, il comando &lt;b&gt;robocopy&lt;/b&gt;, includendo alcune opzioni che consentono la copia dei permessi, oltre che degli attributi dei files.&lt;br /&gt;
Supponendo di voler ricreare la struttura delle directories in&amp;nbsp;&lt;i&gt;C:\Users\UserName&amp;nbsp;&lt;/i&gt;sotto il percorso &lt;i&gt;D:\UserName&lt;/i&gt;, il comando da eseguire sarà:&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;robocopy C:\Users\UserName D:\UserName /E /LEV:2 /XJ /XF * /COPYALL /V&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Volendo ricreare la struttura delle cartelle di tutti gli utenti, si potrebbe invece eseguire il comando:&lt;br /&gt;
&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;robocopy C:\Users D:\ /E /LEV:2 /XD All* Default* /XF * /COPYALL /V&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Una complicazione aggiuntiva è connessa allo spostamento della cartella &lt;i&gt;Public&lt;/i&gt;,&amp;nbsp;meglio nota come &lt;b&gt;&lt;i&gt;Cartella condivisa&lt;/i&gt;&lt;/b&gt;; prima di poterla spostare, infatti, è necessario disattivare il &lt;i&gt;controllo utente di Windows&lt;/i&gt; (&lt;b&gt;ULC&lt;/b&gt;). Una questione di "sicurezza" alla Windows!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-588299727098926632?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8FfrXKNg1LqmHMEmRUQmiFBPFdM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8FfrXKNg1LqmHMEmRUQmiFBPFdM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/8FfrXKNg1LqmHMEmRUQmiFBPFdM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8FfrXKNg1LqmHMEmRUQmiFBPFdM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/Al8iRK5OVbw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/588299727098926632/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=588299727098926632" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/588299727098926632?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/588299727098926632?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/Al8iRK5OVbw/come-spostare-cartella-utenti-windows.html" title="Come spostare la cartella utenti di Windows" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2011/04/come-spostare-cartella-utenti-windows.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D08CR3Y7eSp7ImA9Wx9WFUk.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-7172590027300816578</id><published>2011-01-20T18:50:00.001+01:00</published><updated>2011-01-20T18:51:06.801+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-20T18:51:06.801+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="mac os x" /><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><category scheme="http://www.blogger.com/atom/ns#" term="svn" /><title>Come eliminare ricorsivamente una cartella su Mac OS X</title><content type="html">Su Mac OS X, così come su Linux, per eliminare ricorsivamente tutte le sottocartelle con un determinato nome è sufficiente eseguire il seguente comando da terminale:&lt;br /&gt;
&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;find . -type d -name &lt;i&gt;nomecartelladaeliminare&lt;/i&gt; -exec rm -rf {} \;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;L'opzione -&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;type d&lt;/span&gt; assicura che verranno considerate solo directories; evitando di includerla è possibile quindi cancellare anche i files dal nome specificato.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;b&gt;Attenzione:&lt;/b&gt; prima di eseguire il comando ricordarsi di posizionarsi nella cartella a partire dalla quale si vogliono eliminare le subdirectories!&amp;nbsp;&lt;/div&gt;&lt;div&gt;Per essere certi di quali cartelle verranno eliminate consiglio di eseguire prima:&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;find . -type d -name&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;i&gt;nomecartelladaeliminare&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;i&gt;&lt;br /&gt;
&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;Il comando risulta particolarmente utile se si volessero, ad esempio, eliminare tutte le cartelle &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;.svn&lt;/span&gt; generate dal sistema di subversioning. In tal caso sarebbe sufficiente eseguire il comando:&lt;br /&gt;
&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;find . -type d -name&amp;nbsp;&lt;i&gt;.svn&lt;/i&gt;&amp;nbsp;-exec rm -rf {} \;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-7172590027300816578?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/A3pvMbwphQszqz27CKflti4L_94/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/A3pvMbwphQszqz27CKflti4L_94/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/A3pvMbwphQszqz27CKflti4L_94/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/A3pvMbwphQszqz27CKflti4L_94/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/uRj2_R6UO2c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/7172590027300816578/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=7172590027300816578" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/7172590027300816578?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/7172590027300816578?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/uRj2_R6UO2c/eliminare-ricorsivamente-una-cartella.html" title="Come eliminare ricorsivamente una cartella su Mac OS X" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2011/01/eliminare-ricorsivamente-una-cartella.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE4DRX85fip7ImA9Wx5bEkw.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-4891100925004684723</id><published>2010-10-27T18:29:00.093+02:00</published><updated>2010-10-27T22:56:14.126+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-10-27T22:56:14.126+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="server" /><category scheme="http://www.blogger.com/atom/ns#" term="programmazione" /><category scheme="http://www.blogger.com/atom/ns#" term="mac os x" /><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><category scheme="http://www.blogger.com/atom/ns#" term="svn" /><title>Come installare e configurare Subversion su Mac OS X 10.6</title><content type="html">Quella che segue è la procedura da seguire per l'installazione e la configurazione di &lt;a href="http://subversion.apache.org/"&gt;&lt;b&gt;Apache Subversion&lt;/b&gt;&lt;/a&gt;&amp;nbsp;su &lt;b&gt;Mac OS X&lt;/b&gt; e per la&amp;nbsp;realizzazione di un proprio repository &lt;b&gt;SVN&lt;/b&gt;&amp;nbsp;da condividere in rete. Su Internet sono presenti innumerevoli guide che trattano l'argomento ma, da quello che ho potuto constatare, nessuna è abbastanza aggiornata e molto spesso rimandano a comandi e riferimenti ormai obsoleti o inesistenti!&lt;br /&gt;
&lt;br /&gt;
Il &lt;b&gt;primo passo&lt;/b&gt; è ovviamente quello di installare, se non già presente nel sistema, l'ultima versione disponibile di Apache Subversion, scaricandone il pacchetto dal sito web&amp;nbsp;&lt;a href="http://subversion.apache.org/packages.html"&gt;http://subversion.apache.org/packages.html&lt;/a&gt;&amp;nbsp;(e quindi non più da&amp;nbsp;&lt;a href="http://subversion.tigris.org/"&gt;http://subversion.tigris.org/&lt;/a&gt;&amp;nbsp;come si trova ancora scritto nella stessa documentazione ufficiale!).&lt;br /&gt;
&lt;br /&gt;
Il &lt;b&gt;secondo passo&lt;/b&gt; è quello di decidere preventivamente dove vorrete creare i vostri repositories. Per una questione&amp;nbsp;di sicurezza e di mera organizzazione, i cui vantaggi saranno chiariti in seguito, consiglio vivamente di creare un nuovo gruppo e un nuovo utente, denominandoli entrambi &lt;b&gt;&lt;i&gt;svn&lt;/i&gt;&lt;/b&gt; o come preferite. Per fare questo:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;aprite le&amp;nbsp;&lt;i&gt;Preferenze di sistema &lt;/i&gt;e quindi&amp;nbsp;&lt;i&gt;Account&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;&lt;/i&gt;abilitate le modifiche, cliccando sul lucchetto in basso a sinistra ed inserendo la vostra password&lt;/li&gt;
&lt;li&gt;cliccate sul bottone &lt;b&gt;+&lt;/b&gt;, in basso a sinistra, appena sopra il lucchetto&lt;/li&gt;
&lt;li&gt;create l'account&amp;nbsp;&lt;i&gt;utente &lt;b&gt;svn&lt;/b&gt;&lt;/i&gt;, lasciando selezionato su &lt;i&gt;Nuovo account &lt;/i&gt;la voce&amp;nbsp;&lt;b style="font-style: italic;"&gt;Standard &lt;/b&gt;e&amp;nbsp;digitando&amp;nbsp;&lt;i&gt;&lt;b&gt;Subversion&lt;/b&gt;&lt;/i&gt;&amp;nbsp;in&amp;nbsp;&lt;i&gt;Nome completo&lt;/i&gt;&amp;nbsp;ed &lt;i style="font-weight: bold;"&gt;svn &lt;/i&gt;in &lt;i&gt;Nome account; &lt;/i&gt;inserite quindi una password adeguata, eventualmente la stessa del vostro account, e cliccate sul pulsate &lt;i&gt;Crea account&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;&lt;/i&gt;cliccate nuovamente sul bottone &lt;b&gt;+&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;create il&amp;nbsp;&lt;i&gt;gruppo &lt;/i&gt;&lt;b style="font-style: italic;"&gt;svn&lt;/b&gt;, selezionando su &lt;i&gt;Nuovo account&lt;/i&gt;&amp;nbsp;la voce &lt;b style="font-style: italic;"&gt;Gruppo&lt;/b&gt;, inserendo &lt;b&gt;&lt;i&gt;svn&lt;/i&gt;&lt;/b&gt; in &lt;i&gt;Nome completo&lt;/i&gt;&amp;nbsp;e cliccando sul pulsante &lt;i&gt;Crea gruppo&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;nell'area &lt;i&gt;Appartenenza&lt;/i&gt;, tra le&amp;nbsp;impostazioni del gruppo &lt;b&gt;&lt;i&gt;svn&lt;/i&gt;&lt;/b&gt;, spuntate l'account &lt;i&gt;&lt;b&gt;Subversion&lt;/b&gt;&amp;nbsp;&lt;/i&gt;precedentemente creato&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;A questo punto effettuate il logout ed accedete col nuovo account &lt;b&gt;&lt;i&gt;Subversion&lt;/i&gt;&lt;/b&gt;. Aprite &lt;i&gt;Finder&lt;/i&gt;&amp;nbsp;e create sotto &lt;i&gt;/Utenti/svn&lt;/i&gt; una nuova cartella denominata&amp;nbsp;&lt;b style="font-style: italic;"&gt;Repositories&lt;/b&gt; che, come il nome stesso suggerisce, sarà la directory in cui creerete tutti i vostri repositories SVN.&amp;nbsp;In alternativa è sufficiente digitare da terminale il comando:&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;mkdir /Users/svn/Repositories&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Per una questione di sicurezza conviene ora modificare i permessi della cartella, concedendo l'accesso in scrittura al gruppo &lt;b style="font-style: italic;"&gt;svn &lt;/b&gt;e&amp;nbsp;negando l'accesso agli altri. Per fare questo:&lt;/div&gt;&lt;ol&gt;&lt;li&gt;selezionate la cartella &lt;b style="font-style: italic;"&gt;Repositories&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-style: italic;"&gt;&lt;/b&gt;premete &lt;b&gt;cmd+I&lt;/b&gt;&amp;nbsp;per&amp;nbsp;visualizzarne le &lt;i&gt;Informazioni&lt;/i&gt;&lt;i&gt;&amp;nbsp;&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;&lt;/i&gt;abilitate le modifiche, cliccando sul lucchetto in basso a destra ed inserendo la password&lt;/li&gt;
&lt;li&gt;spostatevi in basso su&amp;nbsp;&lt;i&gt;Condivisione e permessi&lt;/i&gt;, espandendone la vista se necessario&lt;/li&gt;
&lt;li&gt;cliccate&amp;nbsp;sul bottone +&lt;/li&gt;
&lt;li&gt;selezionate il gruppo &lt;i style="font-weight: bold;"&gt;svn&lt;/i&gt;&lt;i&gt;&amp;nbsp;&lt;/i&gt;e cliccate su &lt;i&gt;Seleziona&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;nella colonna &lt;i&gt;Privilegio&lt;/i&gt;&amp;nbsp;di &lt;i&gt;Condivisione e permessi&lt;/i&gt;&amp;nbsp;assegnate quindi:&lt;br /&gt;
- &lt;i&gt;Lettura e scrittura&lt;/i&gt;,&lt;i&gt;&amp;nbsp;&lt;/i&gt;oltre che&amp;nbsp;all'utente, anche al gruppo &lt;i&gt;&lt;b&gt;svn&lt;/b&gt;&lt;br /&gt;
- Solo lettura&lt;/i&gt;&amp;nbsp;a &lt;i style="font-weight: bold;"&gt;staff&lt;/i&gt;&lt;br /&gt;
- &lt;i&gt;Nessun accesso&lt;/i&gt; a &lt;b&gt;&lt;i&gt;everyone&lt;/i&gt;&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;cliccate sull'ingranaggio, in basso a sinistra, selezionate &lt;i&gt;Applica agli elementi inclusi... &lt;/i&gt;e confermate cliccando su &lt;i&gt;OK&lt;/i&gt;&amp;nbsp;alla dialog che si aprirà: questo passaggio (solo questo) dovrete ripeterlo ogni volta che aggiungerete un nuovo repository, in modo da assegnare anche alle nuove sottocartelle di &lt;i style="font-weight: bold;"&gt;Repositories&lt;/i&gt;&lt;i&gt;,&lt;/i&gt;&lt;i style="font-weight: bold;"&gt;&amp;nbsp;&lt;/i&gt;che verranno automaticamente create,&amp;nbsp;gli stessi permessi che abbiamo definito ora; in alternativa sarà possibile assegnarle tramite linea di comando&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;Il &lt;b&gt;terzo passo&lt;/b&gt; consiste nella creazione del repository, da associare ad uno o più progetti. In merito a ciò, è bene ricordare che esistono due possibili approcci: c'è chi realizza un unico repository per tutti i progetti e chi - come il sottoscritto - ne realizza uno per ogni progetto. Se da un lato realizzarne uno solo consente di risparmiare tempo per le operazioni di mantenimento (come i backup), dall'altro, realizzarne uno per ogni progetto o per un gruppo di progetti, consente di definire autorizzazioni diverse che, altrimenti, sarebbero uguali per tutti i progetti. Inoltre, Subversion utilizza &lt;i&gt;repository-global revision numbers&lt;/i&gt;&amp;nbsp;ovvero dei numeri di versione che dipendono dall'intero repository e non dai singoli progetti: se, ad esempio, in un repository venissero mantenuti due progetti distinti A e B, ad ogni modifica di un file, dell'uno o dell'altro progetto, il numero di versione verrebbe indistintamente incrementato per tutti.&lt;/div&gt;&lt;div&gt;Per quanto riguarda, invece, la struttura del progetto, esiste una convenzione - ormai adoperata da tutti - che prevede la creazione di tre sottodirectory, sotto la radice del progetto:&lt;/div&gt;&lt;div&gt;- &lt;b&gt;trunk&lt;/b&gt;, in cui inserire tutti i file del progetto a cui si sta lavorando, generalmente la versione corrente dell'intero progetto&lt;/div&gt;&lt;div&gt;- &lt;b&gt;branch&lt;/b&gt;, in cui è possibile specificare eventuali ramificazioni alternative del progetto principale, nei casi in cui ve ne fossero&lt;/div&gt;&lt;div&gt;- &lt;b&gt;tags&lt;/b&gt;, in cui salvare "rami morti", ovvero non più alimentati da nuove modifiche e che potrebbe contenere, ad esempio, le diverse versioni del progetto&lt;/div&gt;&lt;div&gt;Per chiarire meglio quanto detto finora, supponiamo di voler realizzare un repository per un progetto di nome &lt;b style="font-style: italic;"&gt;prj&lt;/b&gt;, e di volerne effettuare il primo import contenente la struttura base &lt;i style="font-weight: bold;"&gt;trunk/branch/tags&lt;/i&gt;.&amp;nbsp;&lt;/div&gt;&lt;div&gt;Per fare questo, aprite il terminale e scrivete:&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;svnadmin create /Users/svn/Repositories/&lt;b&gt;prj&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;In questo modo verrà creata la directory &lt;i style="font-weight: bold;"&gt;prj&lt;/i&gt;&amp;nbsp;sotto&lt;i&gt; /Users/svn/Repositories&lt;/i&gt;, con il database e tutti i files necessari a Subversion per gestire il repository. A questo punto occorre assegnare i permessi alla cartella appena creata, così come spiegato precedentemente (basta applicare anche solo il punto numero &lt;b&gt;8&lt;/b&gt;, in modo da propagare, alle sottocartelle, i permessi già specificati per la&amp;nbsp;directory&amp;nbsp;&lt;b style="font-style: italic;"&gt;Repositories&lt;/b&gt;).&lt;/div&gt;&lt;div&gt;Realizziamo quindi la struttura del progetto in una cartella temporanea, che successivamente potremo anche eliminare:&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;mkdir /tmp/prj&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;mkdir /tmp/prj/trunk&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;mkdir /tmp/prj/branches&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;mkdir /tmp/prj/tags&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Dopo aver eventualmente inserito sotto &lt;i style="font-weight: bold;"&gt;trunk&lt;/i&gt;&amp;nbsp;i files della prima versione del progetto,&amp;nbsp;importiamo quindi il tutto nel repository con il seguente comando:&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;svn import /tmp/prj file:///Users/svn/Repositories/prj -m "Initial import"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Il progetto verrà a questo punto importato nel repository, assegnando ad ogni file un numero di versione pari a &lt;b&gt;0&lt;/b&gt;&amp;nbsp;ed il commento "Initial import", così come specificato.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Il &lt;b&gt;quarto passo&lt;/b&gt; consiste nel rendere accessibile il repository dalla rete locale e/o Internet, in modo da poter essere utilizzato dai collaboratori - clients - autorizzati.&amp;nbsp;&lt;/div&gt;&lt;div&gt;A seconda della modalità che si intende utilizzare per accedere al repository, è possibile configurare Subversion, lato server, in due modi:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;usando il modulo&amp;nbsp;&lt;b&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;mod_dav_svn&lt;/span&gt; &lt;/b&gt;di &lt;b&gt;Apache&lt;/b&gt;, che consente ai clients di accedere ai repositories tramite il protocollo &lt;b&gt;WebDAV/DeltaV&lt;/b&gt;, estensione del protocollo &lt;b&gt;HTTP&lt;/b&gt;; utilizzando questa modalità è possibile utilizzare l'autenticazione base di &lt;b&gt;HTTP(S)&lt;/b&gt;, crittografando, eventualmente, con &lt;b&gt;SSL&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;usando il programma server standalone&amp;nbsp;&lt;b style="font-family: 'Courier New', Courier, monospace;"&gt;svnserve&lt;/b&gt;, ovvero un servizio&amp;nbsp;in ascolto sulla porta &lt;b&gt;3690&lt;/b&gt;,&amp;nbsp;che consente ai clients di accedere ai repositories tramite un&amp;nbsp;protocollo&amp;nbsp;specifico di Subversion;&amp;nbsp;utilizzando questa modalità è possibile utilizzare l'autenticazione &lt;b&gt;SSH&lt;/b&gt;, crittografando,&amp;nbsp;eventualmente, con&amp;nbsp;un tunnel&amp;nbsp;&lt;b&gt;SSH&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;Supponendo di voler utilizzare il secondo metodo, relativamente più semplice da configurare rispetto al primo, sarebbe sufficiente, per far partire il server come demone, invocare da linea di comando:&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;svnserve -d&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Tuttavia, avendo specificato per la cartella &lt;i style="font-weight: bold;"&gt;Repositories&amp;nbsp;&lt;/i&gt;dei permessi in scrittura per il solo gruppo e utente &lt;b&gt;svn&lt;/b&gt;, bisognerebbe avviare il server accedendo dal terminale dell'account&amp;nbsp;&lt;b&gt;svn&lt;/b&gt;. Considerando inoltre che si vorrà eseguire il server presumibilmente ad ogni avvio del sistema, conviene realizzare il seguente&amp;nbsp;&lt;i&gt;job&lt;/i&gt; per &lt;b&gt;&lt;a href="http://developer.apple.com/macosx/launchd.html"&gt;launchd&lt;/a&gt;,&amp;nbsp;&lt;/b&gt;da inserire nella cartella &lt;i&gt;&lt;b&gt;/Library/LaunchDaemons&lt;/b&gt;&lt;/i&gt; all'interno di un file che chiameremo&amp;nbsp;&lt;b&gt;org.apache.subversion.svnserve.plist&lt;/b&gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;pre class="brush: xml"&gt;&lt;plist version="1.0"&gt;
&lt;dict&gt;
        &lt;key&gt;Disabled&lt;/key&gt;
        &lt;false&gt;&lt;/false&gt;
        &lt;key&gt;Label&lt;/key&gt;
        &lt;string&gt;org.apache.subversion.svnserve&lt;/string&gt;

        &lt;key&gt;Debug&lt;/key&gt;
        &lt;false&gt;&lt;/false&gt;
        &lt;key&gt;OnDemand&lt;/key&gt;
        &lt;true&gt;&lt;/true&gt;

        &lt;key&gt;UserName&lt;/key&gt;
        &lt;string&gt;svn&lt;/string&gt;
        &lt;key&gt;GroupName&lt;/key&gt;
        &lt;string&gt;svn&lt;/string&gt;

        &lt;key&gt;Program&lt;/key&gt;
        &lt;string&gt;/usr/bin/svnserve&lt;/string&gt;
        &lt;key&gt;ProgramArguments&lt;/key&gt;
        &lt;array&gt;
                &lt;string&gt;svnserve&lt;/string&gt;
                &lt;string&gt;--inetd&lt;/string&gt;
                &lt;string&gt;--root&lt;/string&gt;
                &lt;string&gt;/Users/svn/Repositories&lt;/string&gt;
        &lt;/array&gt;

        &lt;key&gt;ServiceDescription&lt;/key&gt;
        &lt;string&gt;SVN Version Control System&lt;/string&gt;

        &lt;key&gt;Sockets&lt;/key&gt;
        &lt;dict&gt;
                &lt;key&gt;Listeners&lt;/key&gt;
                &lt;dict&gt;
                   &lt;key&gt;Bonjour&lt;/key&gt;
                   &lt;true&gt;&lt;/true&gt;
                   &lt;key&gt;SockServiceName&lt;/key&gt;
                   &lt;string&gt;svn&lt;/string&gt;
                &lt;/dict&gt;
        &lt;/dict&gt;

        &lt;key&gt;inetdCompatibility&lt;/key&gt;
        &lt;dict&gt;
                &lt;key&gt;Wait&lt;/key&gt;
                &lt;false&gt;&lt;/false&gt;
        &lt;/dict&gt;
&lt;/dict&gt;
&lt;/plist&gt;
&lt;/pre&gt;&lt;br /&gt;
&lt;b&gt;N.B.&lt;/b&gt; sostituire &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;lt;true&amp;gt;&amp;lt;/true&amp;gt;&lt;/span&gt; con &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;lt;true/&amp;gt;&lt;/span&gt; e &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;lt;false&amp;gt;&amp;lt;/false&amp;gt;&lt;/span&gt; con &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;lt;false/&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Il job così definito specifica di eseguire il comando &lt;i&gt;&lt;b&gt;/usr/bin/svnserve&lt;/b&gt;&lt;/i&gt; come utente &lt;b&gt;&lt;i&gt;svn &lt;/i&gt;&lt;/b&gt;del gruppo &lt;b style="font-style: italic;"&gt;svn&lt;/b&gt;: in questo modo il servizio sarà in grado, come già detto, di accedere in lettura e scrittura a tutti i repositories contenuti a partire dalla radice&amp;nbsp;&lt;i&gt;&lt;b&gt;/Users/svn/Repositories&lt;/b&gt;,&lt;/i&gt;&amp;nbsp;specificata dal parametro &lt;b&gt;--root&lt;/b&gt;; In questo modo ci si è quindi assicurati che il servizio possa accedere solo alle cartelle autorizzate, ovvero quelle accessibili dall'account &lt;i style="font-weight: bold;"&gt;svn&lt;/i&gt;, e non ad altre.&lt;br /&gt;
La porta in ascolto sarà quella standard del servizio SVN, ovvero la &lt;b&gt;TCP/UDP&lt;/b&gt;&amp;nbsp;&lt;b&gt;3960&lt;/b&gt;, così come indicato in &lt;b&gt;&lt;i&gt;/etc/services&lt;/i&gt;&lt;/b&gt;.&lt;br /&gt;
Volendo testare immediatamente il servizio, senza riavviare, è possibile lanciare il &lt;i&gt;job&lt;/i&gt;&amp;nbsp;con il seguente comando:&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;launchctl load /Libray/LaunchDaemons/org.apache.subversion.svnserve.plist&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;launchctl start org.apache.subversion.svnserve&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
A questo punto i clients saranno in grado di effettuare il checkout del progetto utilizzando il seguente comando:&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;svn checkout&amp;nbsp;svn://nome.host.o.indirizzo.ip/&lt;b&gt;prj&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;Il &lt;b&gt;quinto passo&amp;nbsp;&lt;/b&gt;consiste, infine, nella configurazione delle autorizzazione richieste per accedere al repository da parte dei clients. Per le politiche di autenticazione e autorizzazione è stato predisposto il file&amp;nbsp;&lt;b&gt;&lt;i&gt;svnserve.conf&lt;/i&gt;&lt;/b&gt;, presente nella directory &lt;b&gt;&lt;i&gt;conf&lt;/i&gt;&lt;/b&gt;&lt;i&gt;&amp;nbsp;&lt;/i&gt;del repository.&lt;br /&gt;
Nella sezione &lt;b&gt;[general]&lt;/b&gt; del file è possibile abilitare e configurare due proprietà fondamentali:&lt;br /&gt;
- &lt;b&gt;anon-access&lt;/b&gt;, ovvero cosa è consentito ad un utente non autenticato (&lt;i&gt;anonymous&lt;/i&gt;)&lt;br /&gt;
- &lt;b&gt;auth-access&lt;/b&gt;, ovvero cosa è consentito ad un utente autenticato&lt;br /&gt;
Per entrambe le chiavi, i possibili valori - autoesplicativi - sono &lt;b&gt;none&lt;/b&gt;, &lt;b&gt;read&lt;/b&gt; e &lt;b&gt;write&lt;/b&gt;.&lt;br /&gt;
Nel caso in cui non si voglia concedere alcun accesso agli utenti anonimi e permessi di lettura e scrittura a quelli autenticati, sarà quindi sufficiente valorizzare i due attributi come segue:&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;anon-access = none&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;auth-access = write&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Altri due parametri fondamentali, definiti anch'essi nella sezione &lt;b&gt;[general]&lt;/b&gt;, sono;&lt;br /&gt;
-&amp;nbsp;&lt;b&gt;password-db&lt;/b&gt;, tramite il quale è possibile specificare il database delle password&lt;br /&gt;
&lt;b&gt;- realm&lt;/b&gt;, tramite il quale è possibile specificare l'&lt;i&gt;authentication realm&lt;/i&gt;&amp;nbsp;del repository: se due repository hanno lo stesso &lt;i&gt;realm&lt;/i&gt;, dovranno avere lo stesso database delle password e viceversa&lt;br /&gt;
&lt;br /&gt;
Il database delle password di default è rappresentato dal file &lt;i style="font-weight: bold;"&gt;passwd&lt;/i&gt;&amp;nbsp;presente nella stessa directory di&amp;nbsp;&lt;i style="font-weight: bold;"&gt;svnserve.conf&lt;/i&gt;&lt;i&gt;.&lt;/i&gt; Modificando direttamente questo file, è possibile definire le coppie &lt;b&gt;username/password&lt;/b&gt;&amp;nbsp;da utilizzare durante la fase di autenticazione dei client per l'accesso al repositoty.&lt;br /&gt;
Questo sistema rappresenta una valida alternativa all'autenticazione tramite SSH, per il quale occorrerebbe, invece, definire degli utenti reali nel sistema.&lt;br /&gt;
&lt;br /&gt;
La procedura è stata testata su un &lt;b&gt;MacBook Pro&lt;/b&gt; con &lt;b&gt;Mac OS X 10.6.4&lt;/b&gt; utilizzando &lt;b&gt;Subversion 1.6.5&lt;/b&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-4891100925004684723?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/EfE108u9zp3wwJvOXTgCOJdlFdg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EfE108u9zp3wwJvOXTgCOJdlFdg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/EfE108u9zp3wwJvOXTgCOJdlFdg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EfE108u9zp3wwJvOXTgCOJdlFdg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/PXnSAsRT6cY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/4891100925004684723/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=4891100925004684723" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/4891100925004684723?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/4891100925004684723?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/PXnSAsRT6cY/come-installare-e-configurare.html" title="Come installare e configurare Subversion su Mac OS X 10.6" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2010/10/come-installare-e-configurare.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkEFR384cSp7ImA9WhRWF0Q.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-707737516155227295</id><published>2010-10-26T20:14:00.001+02:00</published><updated>2012-01-05T21:16:56.139+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-05T21:16:56.139+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="mac os x" /><title>PC - Mac, solo andata!</title><content type="html">Ebbene sì, finalmente posseggo anch'io un bel &lt;b&gt;Mac&lt;/b&gt;! Il mio caro buon vecchio &lt;b&gt;Dell XPS&lt;/b&gt; non è ancora andato in pensione, anzi, ma il nuovo &lt;b&gt;MacBook Pro&lt;/b&gt; è davvero affascinante e già so che difficilmente riuscirò a tornare indietro quando avrò completato lo svezzamento! Al fascino del design, infatti, si affianca la robustezza di un sistema che trasmette fiducia fin dal primo avvio..&lt;br /&gt;
Vedremo se sarà vero amore!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-707737516155227295?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/b3wbu23JQ9R5IRzntSybD5MX_Zw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/b3wbu23JQ9R5IRzntSybD5MX_Zw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/b3wbu23JQ9R5IRzntSybD5MX_Zw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/b3wbu23JQ9R5IRzntSybD5MX_Zw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/HQmKYArcey4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/707737516155227295/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=707737516155227295" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/707737516155227295?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/707737516155227295?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/HQmKYArcey4/pc-mac-solo-andata.html" title="PC - Mac, solo andata!" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2010/10/pc-mac-solo-andata.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcNQn8-fSp7ImA9WxNbGU4.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-3854099530435702348</id><published>2009-11-23T00:35:00.000+01:00</published><updated>2009-11-23T00:38:13.155+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-23T00:38:13.155+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><category scheme="http://www.blogger.com/atom/ns#" term="symbian" /><category scheme="http://www.blogger.com/atom/ns#" term="hacking" /><title>Come effettuare l'hack su SymbianOS 9.x</title><content type="html">Come al solito mi limiterò a condividere la mia particolare esperienza nella speranza di poter essere utile a quanti, alla ricerca di una soluzione o di un semplice chiarimento, approdino in qualche modo a questo blog! Di forum che trattano dell'argomento ce ne stanno moltissimi ma spesso, come è successo a me, sono troppo generali e dispersivi rispetto al caso specifico che ci interessa. Per questo motivo chiarisco fin da subito che quanto detto è stato testato nello specifico su un &lt;b&gt;Nokia N78 brand TIM fw 12.046&lt;/b&gt;, anche se la procedura è valida e applicabile a tutti i dispositivi &lt;b&gt;Symbian S60 3rd, 3rd FP1, 3rd FP2 e 5th Edition&lt;/b&gt;, &lt;i&gt;brandizzati &lt;/i&gt;o meno che siano (per una lista completa dei dispositivi guarda in fondo a questo post).&lt;div&gt;Per prima cosa occorre brevemente capire a cosa serve questo benedetto &lt;b&gt;&lt;i&gt;hack&lt;/i&gt;&lt;/b&gt;! Detto in poche parole l'&lt;i&gt;hack&lt;/i&gt; serve ad accedere a porzioni di &lt;i&gt;memoria &lt;/i&gt;e del &lt;i&gt;filesystem &lt;/i&gt;del cellulare, altrimenti inaccessibili (come cartelle e files di sistema). Una volta effettuato sarà poi possibile leggere e scrivere in queste zone protette in modo da &lt;i&gt;modificare&lt;/i&gt;, &lt;i&gt;patchare &lt;/i&gt;o &lt;i&gt;crackare &lt;/i&gt;(come meglio si voglia dire) tutti quei files che, per diverse esigenze, lo necessitano. Sarà ad esempio possibile disattivare, editando semplicemente un file, una funzione indesiderata presente nella schermata di &lt;i&gt;StandBy&lt;/i&gt;,&lt;i&gt; &lt;/i&gt;come ad esempio le voci di agenda o quella fastidiosissima scritta "&lt;i&gt;nessuna news non letta&lt;/i&gt;" dell'indesideratissima e inutilissima applicazione &lt;i&gt;News Click&lt;/i&gt; (chi possiede un cell brandizzato &lt;i&gt;Tim &lt;/i&gt;sa di cosa parlo!). Altra cosa possibile, e probabilmente quella che spinge tutti e più di tutto ad effettuare l'hack, è la modifica del programma addetto all'installazione di applicazioni sul dispositivo, un tale &lt;b&gt;installserver&lt;/b&gt; che gira sul cellulare e, normalmente, non consente l'installazione di applicazioni &lt;i&gt;unsigned&lt;/i&gt; ovvero "non firmate".&lt;/div&gt;&lt;div&gt;Chiarito per grosse linee a cosa serve un &lt;i&gt;hack&lt;/i&gt; passiamo subito ai fatti!&lt;/div&gt;&lt;div&gt;Esiste un programma chiamato &lt;b&gt;HelloOX2&lt;/b&gt;, giunto i primi di Ottobre alla versione &lt;b&gt;2.03&lt;/b&gt; e disponibile a &lt;a href="http://helloox2.com/"&gt;questo indirizzo&lt;/a&gt;, che consente per l'appunto un accesso completo alle cartelle e files di sistema. Il programma include al suo interno un tool denominato &lt;b&gt;ROMPatcher+&lt;/b&gt; che consente di applicare &lt;i&gt;patches &lt;/i&gt;(già esistenti o realizzabili personalmente) sul proprio telefonino. La particolarità di queste &lt;i&gt;patches&lt;/i&gt; è che non sono "definitive" ma attivabili all'occorrenza sul cellulare e rimanenti attive solo fin quando il telefono non viene spento. Questo consente di sperimentare nuove &lt;i&gt;patches&lt;/i&gt; (o utilizzarne di esistenti)&lt;i&gt; &lt;/i&gt;senza il timore di causare problemi irreversibili sul proprio dispositivo. In particolare con &lt;b&gt;ROMPatcher+&lt;/b&gt; incluso in &lt;b&gt;HelloOX2 v2.03 &lt;/b&gt;sono presenti già due utilissime &lt;i&gt;patches &lt;/i&gt;pronte per essere semplicemente attivate: &lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Installserver_FP2&lt;/b&gt;&lt;br /&gt;permette di installare sul proprio dispositivo tutte le applicazioni &lt;i&gt;unsigned&lt;/i&gt; che si desidera&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;Open4All_RP+&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;permette di accedere alle cartelle protette di sistema&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;L'applicazione &lt;b&gt;HelloOX2 v2.03&lt;/b&gt; è resa disponibile nel &lt;a href="http://helloox2.com/"&gt;sito ufficiale dell'autore&lt;/a&gt; in due versioni:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;&lt;a href="http://helloox2.com/?page=signed"&gt;signed&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;ovvero già firmata per essere installata e utilizzata col vostro specifico dispositivo, senza ulteriori giri. In cambio è richiesta una donazione, da effettuare tramite PayPal, all'autore.&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;a href="http://www.4shared.com/file/137782202/e2408b8e/HelloOX2v203Unsigned.html"&gt;unsigned&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;ovvero non ancora firmata e che richiede quindi un certificato valido per essere "&lt;i&gt;signata&lt;/i&gt;" prima dell'installazione.&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Di regola dovrei incoraggiarvi verso la prima scelta (anche perché, se nessuno contribuirà con qualche donazione, l'autore non continuerà di certo a rilasciare nuovi aggiornamenti in futuro) ma sarei ipocrita nel farlo e poi sarebbe troppo facile!&lt;/div&gt;&lt;div&gt;Invece, volendo scegliere la seconda strada, occorrerà effettuare qualche passaggio in più prima di poter installare l'applicazione ed effettuare quindi l'&lt;i&gt;hack. &lt;/i&gt;In particolare dovrete certificare l'applicazione &lt;b&gt;HelloOX2_v2.03.Unsigned.sis&lt;/b&gt; utilizzando una delle procedure descritte nel post precedente "&lt;a href="http://just-share-it.blogspot.com/2009/11/come-certificare-applicazioni-unsigned.html"&gt;Come certificare applicazioni unsigned&lt;/a&gt;".&lt;/div&gt;&lt;div&gt;Una volta firmata l'applicazione installatela: durante il processo di installazione verranno mappate le cartelle di sistema in unità virtuali, copiati i file di hacking necessari nell'unità virtuale, attivato il file system, &lt;i&gt;un&lt;/i&gt;mappate le unità virtuali, installato il certificato di root e installato infine &lt;b&gt;ROMPatcher+ v2.2&lt;/b&gt;.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;A installazione completata avviate proprio quest'ultimo. Nella schermata che si presenta vedrete in lista le due &lt;i&gt;patches&lt;/i&gt; discusse in precedenza: &lt;b&gt;Installserver_FP2&lt;/b&gt; e &lt;b&gt;Open4All_RP+&lt;/b&gt;. Attivate la prima semplicemente "cliccandoci" ed uscite pure dal programma. Se siete fortunati dovreste essere già in grado di poter installare applicazioni &lt;i&gt;unsigned&lt;/i&gt;, provate!&lt;/div&gt;&lt;div&gt;Se la &lt;i&gt;patch&lt;/i&gt; non dovesse invece sortire l'effetto sperato, disattivatela (allo stesso modo di come l'avete attivata) e prendete in considerazione una di queste due possibili alternative:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;ricercate nei forum (vedi &lt;i&gt;link utili&lt;/i&gt; a fine post) una &lt;i&gt;patch &lt;/i&gt;per l'&lt;b&gt;installerserver&lt;/b&gt; che sia specifica per il vostro cellulare, ovvero per il vostro modello e versione del firmware: quello che dovete fare è trovare un file del tipo &lt;b&gt;installserver.rpm&lt;/b&gt;, copiarlo nella directory &lt;b&gt;patches&lt;/b&gt;, che &lt;b&gt;ROMPatcher+ &lt;/b&gt;avrà già creato nella vostra &lt;i&gt;memory card&lt;/i&gt;, riavviare l'applicazione, abilitare questa nuova &lt;i&gt;patch&lt;/i&gt; (che comparirà in automatico nella lista delle &lt;i&gt;patches &lt;/i&gt;disponibili) e vedere se funziona (provando a installare qualche applicazione &lt;i&gt;unsigned&lt;/i&gt;).&lt;br /&gt;Questa soluzione, così come l'applicazione di una qualunque &lt;i&gt;patch&lt;/i&gt;, non vi fa rischiare nulla ed è sempre e comunque reversibile: basta disattivare la &lt;i&gt;patch&lt;/i&gt;, o spegnere e riaccendere il cellulare, per far tornare tutto come prima. Provare delle &lt;i&gt;patches&lt;/i&gt;, dunque, non costa nulla!&lt;/li&gt;&lt;li&gt;ricercate nei forum (vedi &lt;i&gt;link utili&lt;/i&gt; a fine post) una versione già &lt;i&gt;patchata &lt;/i&gt;dell'&lt;b&gt;installerserver&lt;/b&gt; che sia specifica per il vostro cellulare, ovvero per il vostro modello e versione del firmware: quello che dovete fare è trovare un file del tipo &lt;b&gt;installserver.exe&lt;/b&gt;, attivare la &lt;i&gt;patch&lt;/i&gt; &lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;Open4All_RP+&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;, copiarlo nella directory &lt;b&gt;c:\sys\bin &lt;/b&gt;e vedere se funziona (provando a installare qualche applicazione &lt;i&gt;unsigned&lt;/i&gt;).&lt;br /&gt;Questa soluzione, così come ogni manomissione dei file di sistema, possiede sempre un minimo rischio anche se, nella maggior parte dei casi (compreso questo), è comunque reversibile: basterà infatti cancellare il file appena copiato per far tornare tutto come prima (se si modifica o sovrascrive un file è invece sempre consigliato effettuarne una copia di backup prima, per poterla ripristinare in seguito se necessario). &lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Un particolare che va ribadito è che l'utilizzo della &lt;i&gt;patch&lt;/i&gt; è "non definitivo", nel senso che ogni volta che si desidererà installare un'applicazione &lt;i&gt;unsigned &lt;/i&gt; sarà necessario attivare la &lt;i&gt;patch&lt;/i&gt; da &lt;b&gt;ROMPatcher+ &lt;/b&gt;(a meno di non averla impostata in modalità &lt;b&gt;auto&lt;/b&gt;, il che significa che verrà attivata da sola ad ogni accensione del cellulare) mentre la modifica o l'aggiunta di files tra quelli di sistema è una modifica "definitiva", nel senso che, a meno di effettuare l'operazione inversa (quando possibile), continua a rimanere attiva e funzionante a ogni riavvio del sistema. Se viene quindi effettuata una modifica che fa &lt;i&gt;crashare &lt;/i&gt;il sistema in fase di &lt;i&gt;boot &lt;/i&gt;non sarà quindi più possibile effettuare l'operazione inversa per ripristinare il sistema nella configurazione stabile. Per questo motivo se si vogliono sperimentare nuovi &lt;i&gt;hack &lt;/i&gt;è consigliabile farlo realizzando una &lt;i&gt;patch&lt;/i&gt; piuttosto che modificando direttamente i files di sistema! Il nome del programma chiarisce ulteriormente la questione: tutti i file che risiedono nella &lt;b&gt;ROM&lt;/b&gt; possono essere &lt;i&gt;patchati&lt;/i&gt;, a tempo di esecuzione, con questo programma.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Per chi desidera smanettare tra i files di sistema o per chi è costretto, in assenza di una &lt;i&gt;patch&lt;/i&gt; per il suo cellulare, a utilizzare la seconda soluzione, consiglio di scaricare e installare &lt;b&gt;X-plore&lt;/b&gt;, un file manager avanzato per dispositivi mobili con numerose funzionalità (tra cui un editor esadecimale) disponibile in versione &lt;i&gt;shareware&lt;/i&gt; a &lt;a href="http://www.lonelycatgames.com/?app=xplore"&gt;questo indirizzo&lt;/a&gt;. Ovviamente per poter accedere ai files di sistema sarà comunque necessario aver effettuato l'&lt;i&gt;hack&lt;/i&gt;, come spiegato, e aver attivato la patch &lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;Open4All_RP+&lt;/b&gt;.&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Per qualunque dubbio o chiarimento, scrivete nei commenti di questo post!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Cellulari Supportati&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;SymbianOS 9.1 (3rd)&lt;/b&gt;&lt;br /&gt;3250 - 5500 - E50 - E60 - E61 - E61i - E62 - E65 - E70 - N71 - N73 - N75 - N77 - N80 - N91 - N92 - N93 - N93i&lt;/li&gt;&lt;li&gt;&lt;b&gt;SymbianOS 9.2 (3rd FP1)&lt;/b&gt;&lt;br /&gt;5700 - 6110 - 6120 - 6121 - 6124 - 6290 - E51 - E63 - E66 - E71 - E90 - N76 - N81 - N81 8Gb - N82 - N95 - N95 8Gb&lt;/li&gt;&lt;li&gt;&lt;b&gt;SymbianOS 9.3 (3rd FP2)&lt;/b&gt;&lt;br /&gt;5320 - 5630 - 5730 - 6210 - 6220 - 6650 - 6710 - 6720 - E52 - E55 - E72 - E75 - N78 - N79 - N85 - N86 - N96&lt;/li&gt;&lt;li&gt;&lt;b&gt;SymbianOS 9.4 (5th)&lt;/b&gt;&lt;br /&gt;5530 - 5800 - N97 - Samsung Omnia i8910 Hd&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;b&gt;Links Utili&lt;/b&gt;&lt;br /&gt;&lt;div&gt;Per ulteriori dettagli e approfondimenti vi rimando ai due forum che reputo essere i più completi su questo e altri argomenti:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.ipmart-forum.it/"&gt;http://www.ipmart-forum.it/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.ipmart-forum.it/showthread.php?t=157215"&gt;http://www.ipmart-forum.it/showthread.php?t=157215&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.nokioteca.net/home/forum/"&gt;http://www.nokioteca.net/home/forum/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.nokioteca.net/home/forum/index.php?showtopic=156692"&gt;http://www.nokioteca.net/home/forum/index.php?showtopic=156692&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-3854099530435702348?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/k8bS6RXp-oldulLC63NKJoPpMFc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/k8bS6RXp-oldulLC63NKJoPpMFc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/k8bS6RXp-oldulLC63NKJoPpMFc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/k8bS6RXp-oldulLC63NKJoPpMFc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/Ooxe3XUvhk4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/3854099530435702348/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=3854099530435702348" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/3854099530435702348?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/3854099530435702348?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/Ooxe3XUvhk4/come-effettuare-lhack-su-symbianos9x.html" title="Come effettuare l'hack su SymbianOS 9.x" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2009/11/come-effettuare-lhack-su-symbianos9x.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcARHkzfSp7ImA9WxNbGU4.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-7248689870271168937</id><published>2009-11-22T19:32:00.006+01:00</published><updated>2009-11-23T00:37:25.785+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-23T00:37:25.785+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><category scheme="http://www.blogger.com/atom/ns#" term="symbian" /><title>Come certificare applicazioni unsigned</title><content type="html">Certificare&lt;i&gt; &lt;/i&gt;o "&lt;i&gt;signare&lt;/i&gt;"&lt;i&gt; &lt;/i&gt;un'applicazione significa letteralmente apporre una firma, ovvero &lt;i&gt;certificarla&lt;/i&gt;, in modo da garantirne e convalidarne autenticità e provenienza. E' lo stesso meccanismo applicato per i siti Internet sicuri: esportando un certificato, rilasciato da un'autorità garante, il sito consente al browser di autenticarne la provenienza analizzandone una firma, in un gioco crittografico di chiavi pubbliche e private che non consente imbrogli. Per il software il concetto è il medesimo: ogni produttore, applicando una propria firma, fornisce le sue applicazioni già &lt;i&gt;signate&lt;/i&gt; e quindi pronte per essere autenticate e utilizzate dal dispositivo che è sicuro, in questo caso, sulla sua provenienza. Un'applicazione &lt;i&gt;unsigned&lt;/i&gt;, invece, non fornisce alcuna informazione che possa garantirne al dispositivo la provenienza e dunque l'affidabilità. Per questo motivo con &lt;b&gt;Symbian S60 3rd Edition&lt;/b&gt; è stata negata la stessa installazione di applicazioni &lt;i&gt;unsigned &lt;/i&gt;in modo da prevenire la propagazione di applicazioni malevole che possano danneggiare in qualche modo il dispositivo. Una questione di sicurezza insomma!&lt;div&gt;Ma allora che significa &lt;i&gt;signare&lt;/i&gt; in proprio le applicazioni?&lt;/div&gt;&lt;div&gt;La risposta è intuibile immaginando di voler produrre noi stessi del software: come faremmo a testare una nostra applicazione se, in fase di sviluppo, non ci fosse fornito un meccanismo per certificare il nostro codice?! Per questo motivo è possibile richiedere un certificato da sviluppatore che consenta di &lt;i&gt;signare&lt;/i&gt; le proprie applicazioni e farle funzionare sul proprio dispositivo. Già, sul proprio dispositivo! Perché un discorso è possedere un certificato da sviluppatore per effettuare delle prove, un'altro è quello di certificare un'applicazione per distribuirla o venderla a più persone (nel qual caso servirebbe un &lt;a href="http://www.verisign.com/code-signing/content-signing-accounts/symbian-signed/index.html"&gt;ACS Publisher ID&lt;/a&gt;). Per questo motivo i certificati da sviluppatore che possono essere richiesti sono legati direttamente al proprio codice &lt;b&gt;&lt;a href="http://it.wikipedia.org/wiki/International_Mobile_Equipment_Identity"&gt;IMEI&lt;/a&gt;&lt;/b&gt; del dispositivo. Fatto sta che, una volta posseduto questo certificato, nessuno può vietarci poi di utilizzarlo per &lt;i&gt;signare&lt;/i&gt;, a nostro rischio e pericolo, applicazioni &lt;i&gt;unsigned&lt;/i&gt; reperite su internet!&lt;/div&gt;&lt;div&gt;Eccoci dunque arrivati ad una prima conclusione: per &lt;i&gt;signare &lt;/i&gt;un'applicazione &lt;i&gt;unsigned&lt;/i&gt; ci serve un certificato da sviluppatore e per averlo dovremo fornire il nostro &lt;b&gt;IMEI&lt;/b&gt;. Per recuperare l'&lt;b&gt;&lt;i&gt;I&lt;/i&gt;&lt;/b&gt;&lt;i&gt;nternational &lt;/i&gt;&lt;b&gt;&lt;i&gt;M&lt;/i&gt;&lt;/b&gt;&lt;i&gt;obile &lt;/i&gt;&lt;b&gt;&lt;i&gt;E&lt;/i&gt;&lt;/b&gt;&lt;i&gt;quipment &lt;/i&gt;&lt;b&gt;&lt;i&gt;I&lt;/i&gt;&lt;/b&gt;&lt;i&gt;dentity &lt;/i&gt;dal proprio cellulare è sufficiente digitare &lt;b&gt;*#06#&lt;/b&gt;. Il codice di &lt;b&gt;15&lt;/b&gt; cifre che apparirà sullo schermo identifica univocamente il proprio dispositivo e va appuntato in quanto necessario, come già detto, per la richiesta di un certificato.&lt;/div&gt;&lt;div&gt;A questo punto serve un modo per generare questo benedetto certificato o quanto meno qualcuno che ce lo fornisca !&lt;/div&gt;&lt;div&gt;La procedura corretta sarebbe quella di collegarsi al sito &lt;a href="https://www.symbiansigned.com/"&gt;www.symbiansigned.com&lt;/a&gt;, registrarsi, scaricare il tool &lt;a href="http://developer.symbian.org/wiki/index.php/File:DevCertRequest_2.3.zip"&gt;DevCertRequest&lt;/a&gt;, realizzare un &lt;i&gt;Developer Certificate Request&lt;/i&gt; (&lt;b&gt;.csr&lt;/b&gt;) e caricarlo sul sito per richiedere finalmente il nostro &lt;i&gt;Developer Certificate&lt;/i&gt;: dopo pochi secondi il certificato sarebbe reso disponibile e pronto per essere scaricato!&lt;/div&gt;&lt;div&gt;Ma, siccome la pigrizia incombe e a nessuno serve realmente un certificato se non per &lt;i&gt;signare&lt;/i&gt; la sola applicazione che consenta l'&lt;i&gt;hack&lt;/i&gt; di turno per il proprio telefonino, ecco alcuni siti che prendendosi carico della richiesta (e anche del vostro IMEI però!) forniscono in tempi "ragionevoli" un certificato utilizzabile a questo scopo:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://cer.s603rd.cn/"&gt;&lt;b&gt;cer.s603rd.cn&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;come già l'estensione del dominio lascia intuire, si tratta di un sito cinese! In realtà, superata la diffidenza iniziale, richiedere un certificato in questo sito è relativamente semplice: non è richiesta registrazione ma basta inserire il proprio IMEI nella casella di testo in alto, inserire il codice di controllo e premere &lt;i&gt;invio&lt;/i&gt;! A distanza di &lt;b&gt;24h&lt;/b&gt; (ma potrebbe servire anche più tempo) basta reinserire il proprio IMEI e, se il certificato sarà pronto, in alto a destra sarà disponibile un link per scaricarlo.&lt;br /&gt;Su questo sito, inoltre, è possibile scaricare uno dei software utilizzabili per certificare applicazioni: &lt;b&gt;&lt;a href="http://cer.s603rd.cn/template/signtools2.2.rar"&gt;SignTools 2.2&lt;/a&gt;&lt;/b&gt;.&lt;/li&gt;&lt;li&gt;&lt;a href="http://isign.imobile.com.cn/"&gt;&lt;b&gt;isign.imobile.com.cn&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;altro sito cinese! per questo consiglio vivamente un interprete perché richiede la registrazione! A ogni modo in alcuni forum che trattano dell'argomento (vedi &lt;i&gt;link utili&lt;/i&gt; a fine post), troverete immagini con spiegazioni dettagliate su ogni singolo passo.&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;a href="http://s60certkey.com/"&gt;s60certkey.com&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;inglese, per fortuna! una volta registrati ed effettuata la richiesta verrete avvisati tramite mail, nel giro di massimo &lt;b&gt;24h &lt;/b&gt;(ma anche prima), della disponibilità del certificato. Chissà perché molti utilizzano questo!&lt;/li&gt;&lt;li&gt;&lt;b&gt;richieste nei forum&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;ormai quasi tutti i forum che trattano dell'argomento consentono, una volta registrati, di poter richiedere un certificato. Alcuni in realtà non fanno altro che girare in automatico le richieste ai siti cinesi: a ogni modo sempre meglio che dover interpretare ideogrammi!&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Va precisato che il &lt;i&gt;certificato pubblico&lt;/i&gt; (&lt;b&gt;.cer&lt;/b&gt;) ha una durata di &lt;b&gt;3 anni&lt;/b&gt; e che quando lo scaricherete dai siti menzionati sarà accompagnato da una&lt;i&gt; chiave privata&lt;/i&gt; (&lt;b&gt;.key&lt;/b&gt;). Entrambi i files sono necessari per certificare le applicazioni utilizzando, a vostra scelta, uno di questi tools:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;SignSIS &amp;amp; MakeSIS&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;inclusi nel &lt;/span&gt;Symbian SDK&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;,&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt; ma reperibili in rete, sono gli univi veri tools (eseguibili da linea di comando) in grado di &lt;i&gt;signare&lt;/i&gt; un &lt;b&gt;.sis&lt;/b&gt;: tutti gli altri che troverete in giro aggiungono semplicemente un'interfaccia grafica che li richiama indirettamente.&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;a href="http://www.ipmart-forum.it/attachment.php?attachmentid=67383&amp;amp;d=1226430313"&gt;SisSigner&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;disponibile a &lt;a href="http://www.ipmart-forum.it/attachment.php?attachmentid=67383&amp;amp;d=1226430313"&gt;questo indirizzo&lt;/a&gt;, dopo esservi registrati e loggati nel forum di &lt;a href="http://www.ipmart-forum.it/"&gt;iPmart&lt;/a&gt;: dispone di una semplice interfaccia grafica per il caricamento del &lt;b&gt;.cer&lt;/b&gt;, del &lt;b&gt;.key&lt;/b&gt; e del &lt;b&gt;.sis&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;a href="http://www.ipmart-forum.it/attachment.php?attachmentid=67382&amp;amp;d=1226430313"&gt;SignSIS-GUI&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;disponibile a &lt;a href="http://www.ipmart-forum.it/attachment.php?attachmentid=67382&amp;amp;d=1226430313"&gt;questo indirizzo&lt;/a&gt;, dopo esservi registrati e loggati nel forum di &lt;a href="http://www.ipmart-forum.it/"&gt;iPmart&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;a href="http://www.ipmart-forum.it/attachment.php?attachmentid=80743&amp;amp;d=1230428673"&gt;BiNPDA SignSiS&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;disponibile a &lt;a href="http://www.ipmart-forum.it/attachment.php?attachmentid=80743&amp;amp;d=1230428673"&gt;questo indirizzo&lt;/a&gt;, dopo esservi registrati e loggati nel forum di &lt;a href="http://www.ipmart-forum.it/"&gt;iPmart&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;a href="http://cer.s603rd.cn/template/signtools2.2.rar"&gt;SignTools&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;funziona anche lì dove altri a volte falliscono! unico inconveniente: quando si avvia la prima volta è scritto in cinese! Fortunatamente, però, in alto a destra si riconosce facilmente un tasto su cui è scritto "english": basta premerlo e magicamente tutto apparirà più comprensibile!&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;a href="http://www.symbian-freeware.com/get-freesigner.html"&gt;FreeSigner&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;funziona direttamente sul cellulare e consente di specificare più &lt;/span&gt;.sis&lt;span class="Apple-style-span" style="font-weight: normal;"&gt; da &lt;i&gt;signare.&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;b&gt;Links Utili&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.ipmart-forum.it/"&gt;http://www.ipmart-forum.it/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.ipmart-forum.it/showthread.php?t=94747"&gt;http://www.ipmart-forum.it/showthread.php?t=94747&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.nokioteca.net/"&gt;http://www.nokioteca.net/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.nokioteca.net/home/forum/index.php?showtopic=155375"&gt;http://www.nokioteca.net/home/forum/index.php?showtopic=155375&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-7248689870271168937?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/cThg_qVcX9l3B9gR3VcIX92GwFs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/cThg_qVcX9l3B9gR3VcIX92GwFs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/cThg_qVcX9l3B9gR3VcIX92GwFs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/cThg_qVcX9l3B9gR3VcIX92GwFs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/W9Uwz8U4pxg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/7248689870271168937/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=7248689870271168937" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/7248689870271168937?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/7248689870271168937?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/W9Uwz8U4pxg/come-certificare-applicazioni-unsigned.html" title="Come certificare applicazioni unsigned" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2009/11/come-certificare-applicazioni-unsigned.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck8FQX4zfSp7ImA9WxNbFks.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-1310509663394241085</id><published>2009-11-19T18:28:00.007+01:00</published><updated>2009-11-19T21:00:10.085+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-19T21:00:10.085+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="server" /><category scheme="http://www.blogger.com/atom/ns#" term="programmazione" /><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><category scheme="http://www.blogger.com/atom/ns#" term="dbms" /><title>Come abilitare le connessioni remote in MS SQL Server 2005</title><content type="html">&lt;div&gt;Nel mentre che ripercorro personalmente questi passi, dovendo configurare una macchina con &lt;b&gt;SQL Server 2005&lt;/b&gt;, vi riporto la procedura corretta per configurare il suddetto DBMS nel minor tempo possibile e senza incorrere in fastidiosi intoppi.&lt;/div&gt;&lt;div&gt;In particolare la seguente procedura consente di configurare SQL Server in modo da farlo lavorare in un ambiente con sistemi operativi misti, potendo accedervi da rete privata o eventualmente da rete pubblica. Questa premessa impone l'attivazione dell'&lt;i&gt;&lt;b&gt;SQL Authentication mode&lt;/b&gt; &lt;/i&gt;che consente, tra le altre cose, di attivare l'utente &lt;b&gt;sa&lt;/b&gt; altrimenti disattivato seguendo l'installazione classica: in fase di installazione, infatti, se si sceglie l'opzione &lt;i&gt;&lt;b&gt;Windows Authentication mode&lt;/b&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;, proposta di default, l'account &lt;b&gt;sa &lt;/b&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;verrà creato ma al tempo stesso disabilitato; se si scegli invece l'opzione &lt;i&gt;&lt;b&gt;Mixed Mode Authentication&lt;/b&gt;&lt;/i&gt; sarà possibile accedere al DBMS sia mediante l'autenticazione di Windows (comunque più sicura) sia mediante l'autenticazione SQL (necessaria in alcuni contesti, come quello esposto). &lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;Se SQL Server è già installato, per cambiare modalità di autenticazione, procedete in questo modo:&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;avviate &lt;b&gt;Microsoft SQL Server Management Studio&lt;/b&gt;&lt;/li&gt;&lt;li&gt;nell'&lt;b&gt;Object Explorer&lt;/b&gt; cliccate col destro sul server e apritene le proprietà&lt;/li&gt;&lt;li&gt;selezionate la pagina &lt;b&gt;Security&lt;/b&gt; e, sotto &lt;b&gt;Server authentication&lt;/b&gt;, selezionate &lt;b&gt;&lt;i&gt;SQL Server and Windows Authentication mode &lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;e cliccate su &lt;b&gt;OK&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;al messaggio di avvertimento, che richiede il riavvio del server, cliccate ancora su &lt;b&gt;OK&lt;/b&gt;&lt;/li&gt;&lt;li&gt;riavviate infine il server cliccando col destro sul server e selezionando &lt;b&gt;&lt;i&gt;Restart&lt;/i&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Per abilitare l'account &lt;b&gt;sa&lt;/b&gt;,&lt;b&gt; &lt;/b&gt;invece:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;avviate &lt;b&gt;SQL Server Management Studio&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;nell'&lt;b&gt;Object Explorer&lt;/b&gt; espandete la voce &lt;/span&gt;Security&lt;/b&gt; e quindi &lt;b&gt;Logins&lt;/b&gt;&lt;/li&gt;&lt;li&gt;cliccate col destro su &lt;b&gt;sa&lt;/b&gt; e apritene le proprietà&lt;/li&gt;&lt;li&gt;nella pagina &lt;b&gt;General&lt;/b&gt; modificate la password con una molto robusta (l'account &lt;b&gt;sa&lt;/b&gt; è particolarmente bersagliato dagli attacchi informatici)&lt;/li&gt;&lt;li&gt;selezionate ora la pagina &lt;b&gt;Status,&lt;/b&gt; cliccate su &lt;b&gt;Enabled &lt;/b&gt;e quindi su &lt;b&gt;OK&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;A questo punto l'&lt;b&gt;SQL Authentication mode&lt;/b&gt; e il login &lt;b&gt;sa&lt;/b&gt; sono stati abilitati. Ora bisogna abilitare le connessioni remote, disattivate di default sia in &lt;b&gt;SQL Server 2005 Express Edition&lt;/b&gt; sia in &lt;b&gt;SQL Server 2005 Developer Edition&lt;/b&gt;:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;avviate &lt;b&gt;SQL Server Surface Area Configuration&lt;/b&gt;, raggiungibile dal menù &lt;b&gt;Start &lt;/b&gt;sotto la voce &lt;b&gt;Configuration Tools&lt;/b&gt; di &lt;b&gt;Microsoft SQL Server 2005&lt;/b&gt;&lt;/li&gt;&lt;li&gt;cliccate su &lt;b&gt;Surface Area Configuration for Services and Connections&lt;/b&gt;&lt;/li&gt;&lt;li&gt;espandete la voce &lt;b&gt;Database Engine&lt;/b&gt; e cliccate su &lt;b&gt;Remote Connections&lt;/b&gt; &lt;/li&gt;&lt;li&gt;cliccate quindi su &lt;b&gt;&lt;i&gt;Local and remote connections&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;, &lt;span class="Apple-style-span" style="font-style: normal;"&gt;specificate il protocollo più opportuno (solo TCP/IP nella maggior parte dei casi) e cliccate su &lt;b&gt;OK&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;al messaggio che vi comunica che per rendere effettive le modifiche occorre riavviare il server cliccate ancora su &lt;b&gt;OK&lt;/b&gt;&lt;/span&gt;&lt;/i&gt;&lt;/li&gt;&lt;li&gt;sempre sotto &lt;b&gt;Database Engine&lt;/b&gt; cliccate ora su &lt;b&gt;Service&lt;/b&gt; e quindi prima sul pulsante &lt;b&gt;Stop&lt;/b&gt; e poi, una volta arrestato il servizio, sul pulsante &lt;b&gt;Start&lt;/b&gt; per farlo ripartire&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;A questo punto le &lt;b&gt;connessioni remote&lt;/b&gt; sono abilitate. Qualora si desideri collegarsi al DBMS usando il nome di un'istanza (ad es. &lt;i&gt;computer_name\SQLEXPRESS&lt;/i&gt;) piuttosto che una porta specifica occorre abilitare anche il servizio &lt;b&gt;SQL Server Browser&lt;/b&gt;. Per fare questo:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;avviate &lt;b&gt;SQL Server Surface Area Configuration&lt;/b&gt;&lt;/li&gt;&lt;li&gt;cliccate su &lt;b&gt;Surface Area Configuration for Services and Connections&lt;/b&gt;&lt;/li&gt;&lt;li&gt;cliccate quindi su &lt;b&gt;SQL Server Bowser&lt;/b&gt;, selezionate con tipo di avvio &lt;b&gt;Automatic  &lt;/b&gt;e cliccate su &lt;b&gt;Apply&lt;/b&gt;&lt;/li&gt;&lt;li&gt;cliccate infine sul pulsante &lt;b&gt;Start&lt;/b&gt; per avviare il servizio&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;A questo punto il servizio &lt;b&gt;SQL Server Browser&lt;/b&gt; è attivo. Ora bisogna configurare il proprio &lt;i&gt;firewall&lt;/i&gt; in modo da abilitare l'accesso remoto ai servizi che sono stati attivati. Se il firewall utilizzato è quello integrato in Windows procedete in questo modo:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;avviate &lt;b&gt;Windows Firewall&lt;/b&gt; (un modo veloce è quello di cliccare su &lt;b&gt;Start&lt;/b&gt;, quindi su &lt;b&gt;Esegui&lt;/b&gt;, digitare &lt;b&gt;firewall.cpl&lt;/b&gt; e cliccare su &lt;b&gt;OK&lt;/b&gt;)&lt;/li&gt;&lt;li&gt;selezionate la tab &lt;b&gt;Eccezioni&lt;/b&gt; e quindi su cliccate su &lt;b&gt;Aggiungi Programma&lt;/b&gt;&lt;/li&gt;&lt;li&gt;cliccate su &lt;b&gt;Sfoglia&lt;/b&gt; e andate a selezionare l'eseguibile &lt;i&gt;C:\Programmi\Microsoft SQL Server\&lt;b&gt;MSSQL.1&lt;/b&gt;\MSSQL\Binn\&lt;b&gt;sqlservr.exe &lt;span class="Apple-style-span" style="font-style: normal;"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;(il percorso corretto, nel punto ...&lt;i&gt;\&lt;b&gt;MSSQL.1&lt;/b&gt;\..., &lt;/i&gt;dipende dall'ID dell'istanza di SQL Server avviata)&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;cliccate su &lt;/span&gt;Apri&lt;span class="Apple-style-span" style="font-weight: normal;"&gt; e quindi su &lt;/span&gt;OK&lt;/span&gt;&lt;/b&gt;&lt;/i&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;In caso lo abbiate attivato, effettuate lo stesso procedimento per il servizio &lt;b&gt;SQL Server Browser&lt;/b&gt; andando a selezionare, questa volta, l'eseguibile &lt;i&gt;C:\Programmi\Microsoft SQL Server\90\Shared\&lt;b&gt;sqlbrowser.exe&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A questo punto.. dovrebbe essere tutto funzionante! ;)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;PS&lt;/b&gt; per effettuare delle semplici prove senza incasinare il proprio sistema operativo, consiglio vivamente l'utilizzo di una macchina virtuale: in particolare ne esiste una già preconfigurata con &lt;b&gt;Windows Server 2008 Enterprise&lt;/b&gt; ed &lt;b&gt;SQL Server 2005&lt;/b&gt; a &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=3c113d55-af83-4abf-a1ba-0e44b7cfc318"&gt;questo indirizzo&lt;/a&gt;. Si tratta di una &lt;b&gt;VHD&lt;/b&gt; che può essere caricata su &lt;b&gt;&lt;a href="http://www.microsoft.com/windows/products/winfamily/virtualpc/default.mspx"&gt;Microsoft Virtual PC&lt;/a&gt;&lt;/b&gt; o su &lt;b&gt;&lt;a href="http://www.microsoft.com/windowsserversystem/virtualserver/default.mspx"&gt;Microsoft Virtual Server&lt;/a&gt;&lt;/b&gt;.&lt;div&gt;Una volta avviata è consigliabile effettuare tutti gli aggiornamenti che vengono proposti e in particolare installare il &lt;i&gt;Service Pack 2&lt;/i&gt; per Windows Server 2008 e il &lt;i&gt;Service Pack 3&lt;/i&gt; per SQL Server 2005.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-1310509663394241085?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/BsfMFJw29R2zuJ6M9nljmb1y-V0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BsfMFJw29R2zuJ6M9nljmb1y-V0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/BsfMFJw29R2zuJ6M9nljmb1y-V0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BsfMFJw29R2zuJ6M9nljmb1y-V0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/1Lnubz1P4A8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/1310509663394241085/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=1310509663394241085" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/1310509663394241085?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/1310509663394241085?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/1Lnubz1P4A8/come-connettersi-ms-sql-server-2005-da.html" title="Come abilitare le connessioni remote in MS SQL Server 2005" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2009/11/come-connettersi-ms-sql-server-2005-da.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUAAQX04eyp7ImA9WxNVFUg.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-8428657423040492334</id><published>2009-10-26T02:53:00.004+01:00</published><updated>2009-10-26T12:49:00.333+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-26T12:49:00.333+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="android" /><title>Dimensioni e unità di misura supportate da Android</title><content type="html">In Android le dimensioni possono essere misurate in:&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;px&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;i&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;&lt;span class="Apple-style-span" style="white-space: normal; "&gt;&lt;i&gt;pixels&lt;/i&gt;, corrispondenti ai pixel effettivi dello schermo.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;in&lt;br /&gt;&lt;/b&gt;&lt;i&gt;inches&lt;/i&gt;,&lt;i&gt; &lt;/i&gt;basati sulle dimensioni fisiche dello schermo, misurate in "pollici".&lt;/li&gt;&lt;li&gt;&lt;b&gt;mm&lt;br /&gt;&lt;/b&gt;&lt;i&gt;millimeters&lt;span class="Apple-style-span" style="font-style: normal; "&gt;,&lt;i&gt; &lt;/i&gt;basati sulle dimensioni fisiche dello schermo, misurate in "millimetri".&lt;/span&gt;&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;pt&lt;br /&gt;&lt;/b&gt;&lt;i&gt;points&lt;/i&gt;, basati sulle dimensioni fisiche dello schermo, misurati in "punti" di 1/72 di pollice l'uno.&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;/b&gt;&lt;b&gt;dp &lt;span class="Apple-style-span" style="font-weight: normal;"&gt;o &lt;/span&gt;dip&lt;br /&gt;&lt;/b&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;&lt;i&gt;&lt;b&gt;d&lt;/b&gt;ensity-&lt;b&gt;i&lt;/b&gt;ndependent &lt;b&gt;p&lt;/b&gt;ixels&lt;/i&gt;,&lt;i&gt; &lt;span class="Apple-style-span" style="font-style: normal; "&gt;rappresenta &lt;b&gt;1 pixel&lt;/b&gt; su uno schermo di &lt;b&gt;160 dpi&lt;/b&gt; (&lt;i&gt;&lt;b&gt;d&lt;/b&gt;ots &lt;b&gt;p&lt;/b&gt;er &lt;b&gt;i&lt;/b&gt;nch&lt;/i&gt;). Il rapporto &lt;/span&gt;dp-to-pixel&lt;span class="Apple-style-span" style="font-style: normal; "&gt; cambierà quindi in base alla densità dello schermo.&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;sp&lt;span class="Apple-style-span" style="font-weight: normal;"&gt; o &lt;/span&gt;sip&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;&lt;i&gt;&lt;b&gt;s&lt;/b&gt;cale-&lt;b&gt;i&lt;/b&gt;ndependent &lt;b&gt;p&lt;/b&gt;ixels&lt;/i&gt;, simile all'unità &lt;/span&gt;dp&lt;/i&gt;, ma scalato anche in base alle preferenze, specificate dall'utente, per le dimensioni dei fonts. &lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;Una nota particolare va fatta per i &lt;i&gt;dip &lt;/i&gt;in quanto unità di misura non proprio convenzionale ma che risulta utile nonché indispensabile in numerosi contesti. Per giustificarne l'utilizzo è sufficiente immaginare due dispositivi Android che posseggono due schermi dalle stesse dimensioni fisiche ma dalle risoluzioni differenti. A parità di dimensioni fisiche, se il primo schermo possiede una risoluzione di &lt;b&gt;320x480&lt;/b&gt; e il secondo una di &lt;b&gt;640x480&lt;/b&gt;, quest'ultimo avrà anche una&lt;i&gt; &lt;/i&gt;densità di pixel maggiore del primo, ovvero &lt;i&gt;dpi &lt;/i&gt;maggiore. Se, sui due dispositivi, si utilizzassero i &lt;i&gt;pixel &lt;/i&gt;per rappresentare un qualunque oggetto, un &lt;i&gt;button &lt;span class="Apple-style-span" style="font-style: normal;"&gt;di largezza &lt;b&gt;100px&lt;/b&gt; &lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;ad esempio, questo apparirebbe più grande nel primo schermo (320x480) e più piccolo nel secondo (640x480). Utilizzando i &lt;/span&gt;dip&lt;span class="Apple-style-span" style="font-style: normal; "&gt;, invece, l'oggetto, un &lt;i&gt;button &lt;span class="Apple-style-span" style="font-style: normal; "&gt;di largezza &lt;b&gt;100dp&lt;/b&gt; &lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;ad esempio&lt;/span&gt;&lt;/i&gt;, apparirebbe uguale nelle dimensioni in entrambi i dispositivi. Nella creazione delle &lt;b&gt;UI&lt;/b&gt; (&lt;/span&gt;&lt;b&gt;U&lt;/b&gt;&lt;span class="Apple-style-span"&gt;ser &lt;/span&gt;&lt;b&gt;I&lt;/b&gt;&lt;span class="Apple-style-span"&gt;nterface&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;s&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;) è quindi auspicabile l'utilizzo di unità di misura indipendenti dal dispositivo utilizzato, come i &lt;/span&gt;dip&lt;span class="Apple-style-span" style="font-style: normal; "&gt; appunto. &lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;&lt;b&gt;NB&lt;/b&gt; l'emulatore di Android viene visualizzato su monitor che posseggono usualmente una densità di pixel di &lt;b&gt;72dpi&lt;/b&gt; diversa da quella dei display dei dispositivi mobili in circolazione, come il &lt;b&gt;T-Mobile G1&lt;/b&gt; che possiede una densità di pixel di&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;&lt;b&gt; 180dpi&lt;/b&gt;!&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Per ulteriori approfondimenti, visitare il link seguente: &lt;a href="http://developer.android.com/intl/zh-CN/guide/topics/resources/available-resources.html#dimension"&gt;http://developer.android.com/intl/zh-CN/guide/topics/resources/available-resources.html#dimension&lt;/a&gt; &lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-8428657423040492334?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/HBtp1wak2cvsT9kPPxde6dZRwUA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HBtp1wak2cvsT9kPPxde6dZRwUA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/HBtp1wak2cvsT9kPPxde6dZRwUA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HBtp1wak2cvsT9kPPxde6dZRwUA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/wZeKj5iPKu4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/8428657423040492334/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=8428657423040492334" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/8428657423040492334?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/8428657423040492334?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/wZeKj5iPKu4/dimensioni-e-unita-di-misura-supportate.html" title="Dimensioni e unità di misura supportate da Android" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2009/10/dimensioni-e-unita-di-misura-supportate.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEAHQn0yfSp7ImA9WxNXGUg.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-8109172301893431519</id><published>2009-10-07T13:50:00.008+02:00</published><updated>2009-10-08T01:05:33.395+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-08T01:05:33.395+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="tips and tricks" /><category scheme="http://www.blogger.com/atom/ns#" term="web" /><title>Google - Tips &amp; Tricks</title><content type="html">Tra le innumerevoli funzionalità, più o meno accessibili, di &lt;a href="http://www.google.com/"&gt;Google&lt;/a&gt; ne esistono alcune che consentono di effettuare ricerche più raffinate o mirate mediante l'utilizzo di alcuni costrutti particolari. Molti di questi sono prefissi speciali da anteporre prima di ogni parola chiave. Di seguito sono riportati i più importanti, indicando tra &lt;strong&gt;[&lt;/strong&gt;parentesi quadre&lt;strong&gt;]&lt;/strong&gt; e in &lt;em&gt;corsivo&lt;/em&gt; alcuni esempi di query:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;+&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;forza Google a ricercare esattamente la parola chiave specificata e a non utilizzare un suo sinonimo (normalmente, infatti, Google considera le parole chiave inserite e loro eventuali sinonimi per effettuare la ricerca). In alternativa si possono utilizzare gli apici &lt;span style="color:#000099;"&gt;""&lt;/span&gt; attorno alla parola.&lt;br /&gt;&lt;strong&gt;es.&lt;/strong&gt; [&lt;em&gt;+animale più +veloce&lt;/em&gt;] restituisce circa 110 mila risultati contro i circa 6 milioni di [&lt;em&gt;animale più veloce&lt;/em&gt;] &lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;-&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;consente di escludere dai risultati le pagine che includono la parola chiave specificata.&lt;br /&gt;&lt;strong&gt;es.&lt;/strong&gt; [&lt;em&gt;+animale più +veloce -video&lt;/em&gt;] ecluderà tra i risultati le pagine che contengono &lt;em&gt;video&lt;/em&gt; &lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;""&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;consentono di specificare l'ordine esatto delle parole, ovvero una frase esatta da ricercare.&lt;br /&gt;&lt;strong&gt;es.&lt;/strong&gt; [&lt;em&gt;"animale più veloce"&lt;/em&gt;] restituirà tra i risultati solo le pagine che contengolo la frase esatta &lt;em&gt;"animale più veloce"&lt;/em&gt; &lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;*&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;l'asterisco è un carattere jolly che consente a Google di sostituirlo con le parole più opportune in base al contesto, consentendo quindi di formulare domande o frasi incomplete.&lt;br /&gt;&lt;strong&gt;es.&lt;/strong&gt; [&lt;em&gt;animale più * al mondo&lt;/em&gt;] restituirà tra i risultati gli animali più &lt;em&gt;veloci&lt;/em&gt;, &lt;em&gt;velenosi&lt;/em&gt; o &lt;em&gt;strani&lt;/em&gt; e risulta molto più efficace della query [&lt;em&gt;animale più al mondo&lt;/em&gt;] senza asterisco! &lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;OR&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;è un operatore che, come suggerisce il nome stesso, consente di indicare due parole chiave alternative per la ricerca.&lt;br /&gt;&lt;strong&gt;es.&lt;/strong&gt; [&lt;em&gt;animale più veloce OR scattante al mondo&lt;/em&gt;] restituirà tra i risultati gli animali più &lt;em&gt;veloci&lt;/em&gt; o più &lt;em&gt;scattanti&lt;/em&gt; e risulta più efficace dell'unione dei risultati delle due singole ricerche effettuate separatamente! &lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;define:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;consente di ricercare la definizione o etimologia di un termine&lt;br /&gt;&lt;strong&gt;es.&lt;/strong&gt; [&lt;em&gt;define:animale&lt;/em&gt;] restituirà tra i risultati alcune definizioni enciclopediche, come quelle presenti su &lt;a href="http://it.wikipedia.org/"&gt;Wikipedia&lt;/a&gt;, e altre recuperate da glossari o dizionari on-line, come &lt;a href="http://it.wiktionary.org/"&gt;Wiktionary&lt;/a&gt; &lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;filetype:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;consente di ricercare file dall'estensione specificata&lt;br /&gt;&lt;strong&gt;es.&lt;/strong&gt; [&lt;em&gt;filetype:pdf&lt;/em&gt;] restituirà solo risultati contenuti in documenti PDF &lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;site:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;restringerà la ricerca alle sole pagine contenute nel dominio specificato&lt;br /&gt;&lt;strong&gt;es.&lt;/strong&gt; [&lt;em&gt;site:blogspot.com&lt;/em&gt;] restituirà nei risultati solo pagine appartenenti al dominio &lt;em&gt;blogspot.com&lt;/em&gt;, ovvero in uno qualunque dei blog gestiti da Google, compreso questo! &lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;allinurl:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;restringerà la ricerca alle sole pagine che contengono le parole specificate nell'URL del loro indirizzo&lt;br /&gt;&lt;strong&gt;es.&lt;/strong&gt; [&lt;em&gt;allinurl:download&lt;/em&gt;] restituirà nei risultati solo pagine che contengono la parola &lt;em&gt;download&lt;/em&gt;, in questo caso pagine che contengono qualcosa da scaricare, si suppone! &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Per queste e altre &lt;em&gt;feature&lt;/em&gt;s potete visitare alcune pagine ufficiali di Google a questi indirizzi:&lt;br /&gt;&lt;a href="http://www.google.com/help/features.html"&gt;http://www.google.com/help/&lt;wbr&gt;features.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.google.com/support/websearch/bin/answer.py?hl=en&amp;amp;answer=136861"&gt;http://www.google.com/support/websearch/bin/answer.py?hl=en&amp;amp;answer=136861&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Infine, se volete utilizzare Google con una veste grafica diversa dal solito: &lt;a href="http://www.google.com/intl/xx-hacker/"&gt;http://www.google.com/intl/xx-&lt;wbr&gt;hacker/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;in reference to: &lt;a href="http://www.google.it/"&gt;Google&lt;/a&gt; (&lt;a href="http://www.google.com/sidewiki/entry/f.vadicamo/id/RCniH9TR93d-dxff_kQ-nxo1Mu4"&gt;view on Google Sidewiki&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-8109172301893431519?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/UDBaKb6kWt0AKS50IzifhTyfFZ0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/UDBaKb6kWt0AKS50IzifhTyfFZ0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/UDBaKb6kWt0AKS50IzifhTyfFZ0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/UDBaKb6kWt0AKS50IzifhTyfFZ0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/-doBrrUgr9s" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/8109172301893431519/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=8109172301893431519" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/8109172301893431519?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/8109172301893431519?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/-doBrrUgr9s/google-tips-tricks.html" title="Google - Tips &amp; Tricks" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2009/10/google-tips-tricks.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CU4DQ304eip7ImA9WxVUEU8.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-8210361108569057945</id><published>2009-03-15T11:28:00.007+01:00</published><updated>2009-03-15T14:32:52.332+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-03-15T14:32:52.332+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="programmazione" /><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="tips and tricks" /><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><title>Come accedere alla clipboard del sistema in Java</title><content type="html">Per accedere alla clipboard è sufficiente invocare il metodo &lt;span style="font-family:courier new;"&gt;getSystemClipboard()&lt;/span&gt; della classe &lt;span style="font-family:courier new;"&gt;java.awt.Toolkit&lt;/span&gt; che restituisce l'istanza singleton della &lt;span style="font-family:courier new;"&gt;Clipboad&lt;/span&gt; del sistema:&lt;br /&gt;&lt;pre name="code" class="brush: java"&gt;Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();&lt;/pre&gt;Per recuperarne il contenuto si dovrà poi richiamare il metodo &lt;span style="font-family:courier new;"&gt;getContents &lt;/span&gt;di &lt;span style="font-family:courier new;"&gt;java.awt.datatransfer.Clipboard&lt;/span&gt; che restituisce un oggetto di tipo &lt;span style="font-family:courier new;"&gt;java.awt.datatransfer.Transferable&lt;/span&gt;.&lt;br /&gt;Come argomento del metodo si può passare tranquillamente &lt;span style="font-family:courier new;"&gt;null&lt;/span&gt; in quanto si tratta di un argomento che attualmente non viene utilizzato.&lt;br /&gt;&lt;pre name="code" class="brush: java"&gt;Transferable contents = clipboard.getContents(null);&lt;/pre&gt;Una volta ottenuto questo riferimento basterà controllare che sia presente del contenuto testuale, tramite la chiamata &lt;span style="font-family:courier new;"&gt;contents.isDataFlavorSupported(DataFlavor.stringFlavor)&lt;/span&gt;, e quindi recuperarne il valore mediante il metodo &lt;span style="font-family:courier new;"&gt;getTransferData&lt;/span&gt;:&lt;br /&gt;&lt;pre name="code" class="brush: java"&gt;if(contents != null &amp;amp;&amp;amp; contents.isDataFlavorSupported(DataFlavor.stringFlavor))&lt;br /&gt;&amp;nbsp;&amp;nbsp;String str = (String)contents.getTransferData(DataFlavor.stringFlavor)&lt;/pre&gt;Il metodo potrebbe tuttavia sollevare le seguenti eccezioni, che andrebbero adeguatamente gestite:&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;java.io.IOException&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;java.awt.datatransfer.UnsupportedFlavorException&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Questo lungo giro per recuperare il contenuto dalla clipboard è dovuto al fatto che nella clipboard può risiedere del contenuto diverso dal semplice testo. Inoltre sistemi operativi diversi potrebbero gestire tipi di contenuto diversi, per cui è necessario prendere tutte le precauzioni del caso!&lt;br /&gt;&lt;br /&gt;Il codice più breve per recupare del testo dalla clipboard potrebbe tuttavia essere il seguente:&lt;br /&gt;&lt;pre name="code" class="brush: java; light: false"&gt;String str;&lt;br /&gt;try{&lt;br /&gt;&amp;nbsp;&amp;nbsp;str = (String)Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null).getTransferData(DataFlavor.stringFlavor)&lt;br /&gt;}catch(Exception e){&lt;br /&gt;&amp;nbsp;&amp;nbsp;str = "";&lt;br /&gt;}&lt;/pre&gt;&lt;span style="font-weight: bold;"&gt;Attenzione &lt;/span&gt;perché nel breve codice riportato non stiamo difatti gestendo adeguatamente le eccezioni ma semplicemente settando la nostra variabile &lt;span style="font-family:courier new;"&gt;String str&lt;/span&gt; con una stringa vuota se qualcosa va male (incluso l'eventuale &lt;span style="font-family:courier new;"&gt;NullPointerException&lt;/span&gt; se il &lt;span style="font-family:courier new;"&gt;content &lt;/span&gt;della &lt;span style="font-family:courier new;"&gt;Clipboard &lt;/span&gt;è null): tutto ciò non è proprio il massimo in termini di gestione delle eccezioni ma è certamente un codice più veloce e performante di qualsiasi versione analoga con &lt;span style="font-family:courier new;"&gt;if&lt;/span&gt; e controlli.&lt;br /&gt;&lt;br /&gt;Il consiglio è quello - come sempre - di dare un'occhiata alle API Java e in particolare a:&lt;br /&gt;&lt;a href="http://java.sun.com/javase/6/docs/api/java/awt/Toolkit.html#getSystemClipboard%28%29"&gt;http://java.sun.com/.../api/java/awt/Toolkit.html#getSystemClipboard()&lt;/a&gt;&lt;br /&gt;&lt;a href="http://java.sun.com/javase/6/docs/api/java/awt/datatransfer/Clipboard.html#getContents%28java.lang.Object%29"&gt;http://java.sun.com/.../api/java/awt/datatransfer/Clipboard.html#getContents(...)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://java.sun.com/javase/6/docs/api/java/awt/datatransfer/Transferable.html#getTransferData%28java.awt.datatransfer.DataFlavor%29"&gt;http://java.sun.com/.../api/java/awt/datatransfer/Transferable.html#getTransferData(..)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;L'argomento, inoltre, è strettamente correlato al &lt;span style="font-style: italic;"&gt;drag e drop&lt;/span&gt; per il quale è disponibile un tutorial della Sun a questo indirizzo:&lt;br /&gt;&lt;a href="http://java.sun.com/docs/books/tutorial/uiswing/dnd/intro.html"&gt;http://java.sun.com/docs/books/tutorial/uiswing/dnd/intro.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-8210361108569057945?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/KSaJ8JnaK0hDr_jf5rdnfDhk4IM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KSaJ8JnaK0hDr_jf5rdnfDhk4IM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/KSaJ8JnaK0hDr_jf5rdnfDhk4IM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KSaJ8JnaK0hDr_jf5rdnfDhk4IM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/Jt9h2_tDGEo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/8210361108569057945/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=8210361108569057945" title="2 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/8210361108569057945?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/8210361108569057945?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/Jt9h2_tDGEo/come-accedere-alla-clipboard-del.html" title="Come accedere alla clipboard del sistema in Java" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2009/03/come-accedere-alla-clipboard-del.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUEHSXY9fCp7ImA9WxVWFEs.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-3232403601110543117</id><published>2009-02-20T16:18:00.012+01:00</published><updated>2009-02-24T09:20:38.864+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-24T09:20:38.864+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="streaming" /><category scheme="http://www.blogger.com/atom/ns#" term="tips and tricks" /><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><category scheme="http://www.blogger.com/atom/ns#" term="web" /><title>Streaming senza limiti? No problem!</title><content type="html">Niente più code su eMule o download di &lt;span style="font-weight: bold;"&gt;giga&lt;/span&gt;nteschi &lt;span style="font-style: italic;"&gt;torrent&lt;/span&gt;: il futuro è lo streaming, e lo streaming è già presente!&lt;br /&gt;La moda di oggi è &lt;a href="http://animedb.tv/"&gt;AnimeDB&lt;/a&gt; (con cloni ammessi e non concessi): ti registri sul forum, ricerchi il tuo film o telefilm preferito, clicchi sul link corrispondente e sei già pronto a visionare il filmato che avevi scelto, senza problemi... o quasi!&lt;br /&gt;In effetti di problemi, negli ultimi tempi, se ne stanno accumulando e "postando" tanti mentre le soluzioni, molto spesso, tendono a rimanere nascoste o poco in evidenza. Qualcuno - niente meno - cerca di renderle il meno accessibili (nascondendo le discussioni su thread non pubblici) per il timore che poi finiscano per essere "scoperte" e rese inefficaci! 'O_O'&lt;br /&gt;Come se tutti quelli che lavorano per &lt;a href="http://www.megavideo.com/"&gt;MegaVideo&lt;/a&gt;, o affini, siano talmente stupidi da non conoscere le soluzioni che circolano per la rete o non siano in grado, volendo, di crearsi loro stessi un account e di sbirciare in tutti questi famigerati thread "nascosti"! Mah!&lt;br /&gt;Comunque, torniamo al problema oggetto del post: &lt;span style="font-weight: bold;"&gt;"i limiti"&lt;/span&gt;.&lt;br /&gt;MegaVideo ha introdotto da un po' una limitazione temporale legata all'indirizzo IP di chi sta visionando il filmato: &lt;span style="font-weight: bold;"&gt;72 minuti&lt;/span&gt; è il tempo massimo oltre il quale un fastidioso messaggio ci comunica di dover attendere quasi un'ora prima di poter continuare con la riproduzione. Ovviamente, se siete a casa vostra (o per meglio dire, avete accesso al router dove siete connessi) basterà &lt;span style="font-weight: bold;"&gt;cambiare indirizzo IP&lt;/span&gt; (disconnettendovi e riconnettendovi alla vostra linea ADSL, a meno di non possedere un IP statico e di non avere FastWeb) e il gioco è fatto! Niente meno esistono programmi per farlo in automatico o, in alternativa, si può ricorrere a &lt;span style="font-weight: bold;"&gt;server proxy&lt;/span&gt; che mascherano il vostro IP aggirando - a meno di possibili &lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;"connection problem&lt;/span&gt;s&lt;span style="font-style: italic;"&gt;"&lt;/span&gt; su MegaVideo - il problema.&lt;br /&gt;Infine, evitando di commentare soluzioni che prevedono di diventare "magicamente" utenti&lt;span style="font-weight: bold;"&gt; premium&lt;/span&gt;, rimane una soluzione altresì interessante e vantaggiosa: quella di ottenere l'URL del file video originale! C'è chi segue questa strada per scaricarsi interamente il filmato, ma è utilissima anche per riprodurlo in streamining e, oltre al superamento del limite dei 72 minuti, c'è l'ulteriore vantaggio di poter visionare il filmato al massimo della risoluzione possibile (ben oltre quella ridotta di MegaVideo!).&lt;br /&gt;Il trucco sta nel fatto che ogni filmato visionabile in &lt;a href="http://www.megavideo.com/"&gt;MegaVideo&lt;/a&gt; è linkato a un suo corrispondente originale in &lt;a href="http://www.megaupload.com/"&gt;MegaUpload&lt;/a&gt;. Per ottenere questo link bisogna essere utenti &lt;span style="font-weight: bold;"&gt;premium&lt;/span&gt; oppure affidarsi a generatori di link per MegaUpload, a partire da URL per MegaVideo. E' possibile rintracciarne più di uno, di questi generatori, scrivendo &lt;span style="font-style: italic;"&gt;"MegaVideo to MegaUpload link generator"&lt;/span&gt; nel motore di ricerca. Alcuni di questi sono:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://daiphyer.com/megavideo.com/download/link/generator"&gt;http://daiphyer.com/megavideo.com/download/link/generator&lt;/a&gt; &lt;a href="http://daiphyer.com/megavideo.com/download/link/generator"&gt;&lt;br /&gt;&lt;/a&gt; - richiede una registrazione, ma la mail non deve necessariamente essere valida!&lt;a href="http://10minutemail.com/"&gt;&lt;/a&gt;&lt;br /&gt;- &lt;span style="font-weight: bold;"&gt;attenzione &lt;/span&gt;al popup che cercherà di aprirsi e che vi chiederà di salvare il file &lt;span style="font-style: italic;"&gt;"alert.exe"&lt;/span&gt;: è un &lt;span style="font-style: italic;"&gt;troyan, &lt;/span&gt;ma basta ignorarlo e non crea nessun problema...&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://songvn.com/media/convert_megavideo.php"&gt;http://songvn.com/media/convert_megavideo.php&lt;br /&gt;&lt;/a&gt;&lt;/li&gt; - potrebbe apparire un banner pubblicitario che vi impedisce di copiare il link MegaUpload se prima non cliccate su uno degli sponsor: se proprio non volete accontentarlo, cercate di essere più rapido di lui, oppure copiatevi "a occhio" l'URL che si intravede sotto!&lt;br /&gt;&lt;/ul&gt;Una volta ottenuto il link per MegaUpload, apritelo in una nuova scheda, immettete i caratteri di controllo, cliccate su &lt;span style="font-weight: bold;"&gt;"scarica file"&lt;/span&gt; e, nella pagina che seguirà, copiate l'indirizzo del file video (&lt;span style="font-weight: bold;"&gt;.avi&lt;/span&gt;) recuperandolo dal pulsante &lt;span style="font-weight: bold;"&gt;"download standard" &lt;/span&gt;(&lt;span style="font-style: italic;"&gt;tasto destro sul pulsante -&gt; copia indirizzo&lt;/span&gt;), attivo solo dopo i &lt;span style="font-weight: bold;"&gt;45 secondi&lt;/span&gt; obbligatori per noi poveri utenti non-premium!&lt;br /&gt;A questo punto potete - oltre a scaricarvi eventualmente l'intero file (!) - visualizzarlo in streaming in due modi:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;mediante l'utilizzo di servizi come quello offerto da DivX all'indirizzo &lt;a href="http://labs.divx.com/WebPlayerCodeGenerator"&gt;http://labs.divx.com/WebPlayerCodeGenerator&lt;/a&gt;: basta inserire l'URL del file nella form, cliccare sul pulsante &lt;span style="font-weight: bold;"&gt;"generate"&lt;/span&gt; e successivamente su &lt;span style="font-weight: bold;"&gt;"preview"&lt;/span&gt;&lt;span&gt; (è necessario &lt;/span&gt;&lt;span&gt;comunque aver installato i codec DivX)&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;aprendo l'URL con &lt;a href="http://www.videolan.org/vlc/"&gt;VLC Media Player&lt;/a&gt; o &lt;a href="http://italy.real.com/player/"&gt;Real Player&lt;/a&gt; (o qualunque altro buon player che supporti lo streaming) e visualizzandolo, in tal modo, alla massima risoluzione possibile!&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Adesso sì che non dormirete davvero per vedervi quelle 4/5 puntate a notte del vostro telefilm preferito!&lt;br /&gt;Io torno a &lt;span style="font-style: italic;"&gt;Prison Break,&lt;/span&gt; che ad Aprile riprende e sono ancora alla terza serie! :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-3232403601110543117?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/q-gVC-IRYhMtxzDafKlwksa8C-w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/q-gVC-IRYhMtxzDafKlwksa8C-w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/q-gVC-IRYhMtxzDafKlwksa8C-w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/q-gVC-IRYhMtxzDafKlwksa8C-w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/M8qigH6CFkY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/3232403601110543117/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=3232403601110543117" title="1 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/3232403601110543117?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/3232403601110543117?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/M8qigH6CFkY/streaming-senza-limiti-no-problem.html" title="Streaming senza limiti? No problem!" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2009/02/streaming-senza-limiti-no-problem.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkENR3czfip7ImA9WxVUEUw.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-5825619372491343928</id><published>2008-12-16T18:09:00.007+01:00</published><updated>2009-03-15T11:58:16.986+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-03-15T11:58:16.986+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="tips and tricks" /><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><title>Come modificare i DNS della Vodafone Internet Key</title><content type="html">Modificare gli indirizzi IP dei server DNS della &lt;span style="font-style: italic;"&gt;Int&lt;/span&gt;&lt;span style="font-style: italic;"&gt;ernet Keys&lt;/span&gt; di &lt;span style="font-style: italic;"&gt;Vodafone&lt;/span&gt; è un'operazione semplicissima! Peccato che tra le centinaia di pagine che stanno ai primi posti tra i risultati di Google, non ne abbia trovato una, quando serviva, che rispondesse in modo completo e funzionale. Altro che pulsante "mi sento fortunato"... O_O&lt;br /&gt;Il problema è che, pur modificando i DNS tra le proprietà della connessione di rete &lt;span style="font-style: italic;"&gt;VMCLite&lt;/span&gt; (TCP/IPv4), le impostazioni vengono ripristinate a quelle di default (automatiche) al successivo utilizzo del pennino! Da questo punto in poi, non sto neppure a raccontarvi quante ne ho lette sui forum... e forse vi ci sarete imbattuti anche voi, visto che alla fine siete arrivati qui!&lt;br /&gt;Per risolvere il problema è sufficiente:&lt;br /&gt;- avviare&lt;span style="font-style: italic;"&gt; "Vodafone Mobile Connect Lite"&lt;/span&gt;&lt;br /&gt;- andare nel menu &lt;span style="font-style: italic;"&gt;Impostazioni&lt;/span&gt; e selezionare &lt;span style="font-weight: bold; font-style: italic;"&gt;APN&lt;/span&gt;&lt;br /&gt;- selezionare &lt;span style="font-style: italic;"&gt;Impostazioni&lt;/span&gt; &lt;span style="font-style: italic;"&gt;APN manuali&lt;/span&gt;&lt;br /&gt;- inserire nel campo &lt;span style="font-style: italic;"&gt;APN &lt;/span&gt;l'indirizzo &lt;span style="font-style: italic;"&gt;web.omnitel.it&lt;/span&gt;&lt;br /&gt;- lasciare vuoti i campi &lt;span style="font-style: italic;"&gt;ID utente&lt;/span&gt; e &lt;span style="font-style: italic;"&gt;password&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;- &lt;/span&gt;inserire DNS primario e secondario rispettivamente nelle voci &lt;span style="font-weight: bold;"&gt;DNS1&lt;/span&gt; e &lt;span style="font-weight: bold;"&gt;DNS2&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_gzfBOz2T1QQ/SUmVfFuh2mI/AAAAAAAAAH8/LJL9kdR-Cxg/s1600-h/Vodafone+Internet+Key.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 214px;" src="http://1.bp.blogspot.com/_gzfBOz2T1QQ/SUmVfFuh2mI/AAAAAAAAAH8/LJL9kdR-Cxg/s320/Vodafone+Internet+Key.jpg" alt="" id="BLOGGER_PHOTO_ID_5280916399414434402" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_gzfBOz2T1QQ/SVUFzHVV-uI/AAAAAAAAAS8/OqqwEVgaCzA/s1600-h/vmclite.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 194px;" src="http://1.bp.blogspot.com/_gzfBOz2T1QQ/SVUFzHVV-uI/AAAAAAAAAS8/OqqwEVgaCzA/s320/vmclite.jpg" alt="" id="BLOGGER_PHOTO_ID_5284136113489181410" border="0" /&gt;&lt;/a&gt;E il gioco è fatto! Potete finalmente avviare il vostro programma di Poker preferito o accedere ai siti prima inibiti perchè senza concessione AAMS!&lt;br /&gt;Appena ho un po' di tempo spiegherò meglio di che si tratta.. ma per ora accontentavi di questo! ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-5825619372491343928?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/PxMS7Vv3N65aNRv1lBbmZZa1AZU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PxMS7Vv3N65aNRv1lBbmZZa1AZU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/PxMS7Vv3N65aNRv1lBbmZZa1AZU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PxMS7Vv3N65aNRv1lBbmZZa1AZU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/MRS6EOZuN00" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/5825619372491343928/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=5825619372491343928" title="15 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/5825619372491343928?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/5825619372491343928?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/MRS6EOZuN00/come-modificare-i-dns-della-vodafane.html" title="Come modificare i DNS della Vodafone Internet Key" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_gzfBOz2T1QQ/SUmVfFuh2mI/AAAAAAAAAH8/LJL9kdR-Cxg/s72-c/Vodafone+Internet+Key.jpg" height="72" width="72" /><thr:total>15</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2008/12/come-modificare-i-dns-della-vodafane.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkAFQnw9fSp7ImA9WxVUEUw.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-2953866191916587328</id><published>2008-11-29T20:02:00.008+01:00</published><updated>2009-03-15T11:58:33.265+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-03-15T11:58:33.265+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="tips and tricks" /><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><category scheme="http://www.blogger.com/atom/ns#" term="web" /><title>Come aggirare l'oscuramento dei siti</title><content type="html">Evitando inutili parole circa la leggitimità o meno della faccenda, esistono diversi modi per aggirare l'oscuramento - introdotto dal &lt;span style="font-style: italic;"&gt;"Decreto Ministero Economia"&lt;/span&gt; italiano - dei siti di &lt;span style="font-style: italic;"&gt;Casino online&lt;/span&gt; e dei siti di &lt;span style="font-style: italic;"&gt;scommesse sportive&lt;/span&gt;. Tutto sta nel bypassare i server &lt;span style="font-weight: bold;"&gt;DNS&lt;/span&gt; italiani e puntare, in altro modo, all'indirizzo IP del sito che si vuole navigare. Per fare ciò è possibile:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;utilizzare direttamente l'indirizzo IP del sito piuttosto che l'&lt;span style="font-style: italic;"&gt;hostname&lt;/span&gt;: occorre quindi memorizzarselo prima che il sito venga oscurato, ovviamente!&lt;br /&gt;ad es. l'indirizzo IP di  &lt;span style="font-weight: bold; font-style: italic;"&gt;bet365.com&lt;/span&gt; è &lt;span style="font-weight: bold;"&gt;81.94.208.20&lt;/span&gt; &lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;modificare gli indirizzi IP dei DNS utilizzati dal proprio router e/o dalla propria scheda di rete: una buona alternativa sono quelli di &lt;a href="http://www.opendns.com/"&gt;OpenDNS&lt;/a&gt; (&lt;span style="font-weight: bold;"&gt;208.67.222.222&lt;/span&gt; e &lt;span style="font-weight: bold;"&gt;208.67.220.220&lt;/span&gt;)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_gzfBOz2T1QQ/STGb6WIy3cI/AAAAAAAAAGw/X8pPdKwp3Ns/s1600-h/connessione.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 284px; height: 320px;" src="http://3.bp.blogspot.com/_gzfBOz2T1QQ/STGb6WIy3cI/AAAAAAAAAGw/X8pPdKwp3Ns/s320/connessione.gif" alt="" id="BLOGGER_PHOTO_ID_5274168065304747458" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Sull'argomento, comunque, esistono diversi forum di discussione... per me, invece, la discussione finisce qui: devo andare a scommettere su Juventus-Reggina! :D&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-2953866191916587328?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/5mii4vU2_QAoHUF0lYLja5l4Kkg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5mii4vU2_QAoHUF0lYLja5l4Kkg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/5mii4vU2_QAoHUF0lYLja5l4Kkg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5mii4vU2_QAoHUF0lYLja5l4Kkg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/zgIZhVstk08" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/2953866191916587328/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=2953866191916587328" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/2953866191916587328?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/2953866191916587328?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/zgIZhVstk08/come-aggirare-loscuramento-dei-siti.html" title="Come aggirare l'oscuramento dei siti" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_gzfBOz2T1QQ/STGb6WIy3cI/AAAAAAAAAGw/X8pPdKwp3Ns/s72-c/connessione.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2008/11/come-aggirare-loscuramento-dei-siti.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkYMRH07fyp7ImA9WhRWF0Q.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-7884674509532437720</id><published>2008-10-29T09:26:00.009+01:00</published><updated>2012-01-05T21:09:45.307+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-05T21:09:45.307+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="windows" /><title>Questa copia di Windows non è autentica !</title><content type="html">Non so per quale misterioso motivo, la mia copia &lt;span style="font-weight: bold;"&gt;autentica&lt;/span&gt; di Windows Vista continua saltuariamente a uscirsene fuori con questo irritante messaggio, impresso in fondo a destra nel desktop: &lt;span style="font-style: italic;"&gt;"Questa copia di Windows non è autentica".&lt;/span&gt;&lt;br /&gt;Niente, neppure un punto esclamativo che ironizzi sull'inattesa situazione.. vorrebbero proprio farmelo credere, ma questa volta è autentica cacchio.. almeno questa copia, lo è!&lt;br /&gt;Il messaggio, anche questo per cause ancora ignote, scompare dopo qualche riavvio senza che ne rimanga alcuna traccia...&lt;br /&gt;A volte, prima della inquietante scritta sul desktop, è possibile che compaia un ulteriore messaggio, in una squallida dialog come questa:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_gzfBOz2T1QQ/SQm9q-rDFeI/AAAAAAAAAGo/y1ZcdgEX5gM/s1600-h/swcontraffatto.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 231px;" src="http://2.bp.blogspot.com/_gzfBOz2T1QQ/SQm9q-rDFeI/AAAAAAAAAGo/y1ZcdgEX5gM/s320/swcontraffatto.jpg" alt="" id="BLOGGER_PHOTO_ID_5262946185634846178" border="0" /&gt;&lt;/a&gt;&lt;span style="font-style: italic;"&gt;"Spedizione aggiornamento facoltativa non funzionante"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"Il software in uso potrebbe essere contraffatto"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"Per usare tutte le funzionalità di Microsoft Windows,&lt;br /&gt;come Tutti gli aggiornamenti da Windows Update,&lt;br /&gt;ottenere gli ultimi aggiornamenti e ricevere il supporto tecnico,&lt;br /&gt;è necessario verificare l'autenticità della copia di Microsoft Windows in uso"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"Connetti a Internet per risolvere il problema"&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;E quindi, fatemi capire, il computer si blocca, intimandomi che sono un contraffatore, perchè una fantomatica, non specificata nè autorizzata, "spedizione aggiornamento &lt;span style="font-weight: bold;"&gt;FACOLTATIVA&lt;/span&gt;" risulta essere non funzionante?!?&lt;br /&gt;E che vuol dire?! ma chi sei? che cosa volevi fare?! E soprattutto: che diamine volevi spedire??? O_o&lt;br /&gt;L'irritante situazione si ripresenta,  almeno nel mio caso, con periodicità quasi bimensile, ma sempre e comunque da un giorno all'altro, senza alcuna causa apparente.&lt;br /&gt;Su Internet ho trovato molti casi simili al mio, ma nessuno che abbia seriamente indagato le possibili cause del problema.&lt;br /&gt;In attesa di capirci qualcosa di più - e di condivide con voi la possibile scoperta - posso dirvi quello che ho notato e/o sospetto:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;il messaggio compare quando non mi connetto ad internet per un paio di giorni o quando sono dietro a un proxy HTTP: è possibile che Windows Vista voglia, per forza di cose, verificare la licenza con una certa periodicità che non può essergli negata!&lt;br /&gt;Una volta eravamo noi a decidere cosa un software poteva e doveva fare.. oggi, invece, bisogna essergli riconoscenti se ti fanno capire cosa stanno facendo e cosa pretendono per non bloccarsi continuamente...&lt;br /&gt;&lt;/li&gt;&lt;li&gt;il messaggio scompare quando Windows Vista ristabilisce una connessione ad Intenet ed è quindi in grado di riattivare la copia&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;E' possibile a ogni modo utilizzare lo strumento di gestione license del software Windows - comando "&lt;span style="font-weight: bold;"&gt;slmgr.vbs&lt;/span&gt;" - per indagare le possibile cause e tentare qualche soluzione:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_gzfBOz2T1QQ/SQgsJo1WKyI/AAAAAAAAAGg/DHfoI2korns/s1600-h/slmgr.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 226px; height: 320px;" src="http://3.bp.blogspot.com/_gzfBOz2T1QQ/SQgsJo1WKyI/AAAAAAAAAGg/DHfoI2korns/s320/slmgr.jpg" alt="" id="BLOGGER_PHOTO_ID_5262504708674038562" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;In particolare, aprendo la console dei comandi con privilegi da amministratore, è possibile digitare il comando "&lt;span style="font-weight: bold;"&gt;slmgr.vbs /ato&lt;/span&gt;" per forzare l'attivazione della licenza.&lt;br /&gt;Per accertarsi dell'effettivo esito di qualunque operazione è sempre e comunque necessario riavviare il computer...&lt;br /&gt;Sarà questa la volta buona?!? ... O_o ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-7884674509532437720?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/TL0_pmmahpU6rsl4dEtSnwxd3cg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TL0_pmmahpU6rsl4dEtSnwxd3cg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/TL0_pmmahpU6rsl4dEtSnwxd3cg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TL0_pmmahpU6rsl4dEtSnwxd3cg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/f1gJLr9VKBk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/7884674509532437720/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=7884674509532437720" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/7884674509532437720?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/7884674509532437720?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/f1gJLr9VKBk/questa-copia-di-windows-non-autentica.html" title="Questa copia di Windows non è autentica !" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_gzfBOz2T1QQ/SQm9q-rDFeI/AAAAAAAAAGo/y1ZcdgEX5gM/s72-c/swcontraffatto.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2008/10/questa-copia-di-windows-non-autentica.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEEBRns4eip7ImA9WxJbEEU.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-4542818613108463297</id><published>2008-01-24T15:43:00.002+01:00</published><updated>2009-07-20T12:44:17.532+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-07-20T12:44:17.532+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="web" /><title>La TV del giorno prima</title><content type="html">Pochi lo sanno ma esiste &lt;a href="http://www.tvdelgiornoprima.it/"&gt;un sito&lt;/a&gt; che consente di rivedere, in tutta tranquillità, i programmi e i film andati in onda nei giorni precedenti.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.tvdelgiornoprima.it/"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://www.tvdelgiornoprima.it/tvdgp/images/LogoTVgPrima.jpg" alt="TV del giorno prima" border="0" /&gt;&lt;/a&gt;Il progetto, ancora in fase di sviluppo e non completamente "stabile", è sviluppato da &lt;a href="http://www.tilab.com/"&gt;TILAB&lt;/a&gt; (Telecom Italia Lab) e mette a disposizione dell'utente una serie di funzioni che vanno ben oltre il semplice &lt;span style="font-style: italic;"&gt;video on demand&lt;/span&gt;.&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Con la "TV del giorno prima" non perderai più nessuna trasmissione, nessuna puntata del tuo telefilm preferito o evento sportivo: potrai guardare tutti i programmi all'ora che desideri.&lt;/span&gt; &lt;span style="font-style: italic;"&gt;La "TV del giorno prima" registra per te tutte le trasmissioni, offrendoti una guida televisiva personalizzata, grazie alla quale puoi visionare con calma tutti i titoli dei programmi dei giorni precedenti, in modo da scegliere quello che desideri vedere in quel preciso momento.&lt;/span&gt; &lt;span style="font-style: italic;"&gt;La "TV del giorno prima" ricerca per te le trasmissioni del passato, che trattano di un argomento specifico, in modo da poterle rivedere tutte insieme.&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;In effetti più che &lt;span style="font-style: italic;"&gt;"TV del giorno prima"&lt;/span&gt; avrebbero potuto chiamarla &lt;span style="font-style: italic;"&gt;"TV del mese prima"&lt;/span&gt; considerando che è possibile visionare trasmissioni andate in onda fino a circa un mese fa!&lt;br /&gt;Ah, l'indirizzo è &lt;a href="http://www.tvdelgiornoprima.it/"&gt;www.tvdelgiornoprima.it&lt;/a&gt; ! Nulla di difficile da ricordare quindi.. buona visione! :)&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;UPDATE [20 Luglio 2009]&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;Come c'era da aspettarsi la "TV del giorno prima" sta diventando qualcos'altro: purtroppo, con  tutta probabilità un bel servizio a pagamento&lt;/span&gt;&lt;span style="font-style: italic;"&gt;!&lt;br /&gt;&lt;/span&gt;&lt;span&gt;Questa è la mail che ho ricevuto proprio oggi dal vecchio staff:&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;table style="width: 100%;" border="0" cellpadding="0" width="100%"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="padding: 0.75pt; width: 105.75pt;" width="141"&gt;&lt;p&gt;&lt;img src="http://www.nextinnovation.it/repository/service/mail/next.gif" alt="NEXT" border="0" /&gt;&lt;/p&gt; &lt;/td&gt; &lt;td style="padding: 0.75pt;"&gt; &lt;p&gt; &lt;/p&gt;&lt;br /&gt;&lt;/td&gt; &lt;td style="padding: 0.75pt; width: 90pt;" width="120"&gt; &lt;p&gt;&lt;img src="http://www.nextinnovation.it/repository/service/mail/telecom.gif" alt="Telecom" border="0" width="118" /&gt;&lt;/p&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt;    &lt;p&gt; &lt;span style="color: rgb(102, 102, 102);font-size:10;" &gt;Gentile collega, &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: rgb(102, 102, 102);font-size:10;" &gt;la TVdelgiornoprima si rinnova e nasce Next TV, la web TV di Next Open Innovation per accedere in modo personalizzato a contenuti TV on demand e near real time.&lt;br /&gt;Per scoprire Next TV e provare in anteprima il nuovo servizio, ti invitiamo ad iscriverti al portale su &lt;a href="http://nextopeninnovation.it/site/next/register.html" target="_blank"&gt;http://nextopeninnovation.it/&lt;wbr&gt;site/next/register.html&lt;/a&gt; e a rispondere a questa mail indicandoci il tuo nickname Next.   &lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: rgb(102, 102, 102);font-size:10;" &gt;Affrettati, il numero dei partecipanti è limitato.&lt;/span&gt;&lt;/p&gt;Che dire.. vedremo che cosa ne salterà fuori, nella speranza che possa essere un servizio alla portata di tutti.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-4542818613108463297?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/HtgLuXO3kRTowiLAIUG3rHssYs4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HtgLuXO3kRTowiLAIUG3rHssYs4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/HtgLuXO3kRTowiLAIUG3rHssYs4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HtgLuXO3kRTowiLAIUG3rHssYs4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/7uxoNbciWFE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/4542818613108463297/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=4542818613108463297" title="7 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/4542818613108463297?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/4542818613108463297?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/7uxoNbciWFE/la-tv-del-giorno-prima.html" title="La TV del giorno prima" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>7</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2008/01/la-tv-del-giorno-prima.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkYMRHwyfSp7ImA9WhRWF0Q.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-5370279413469442559</id><published>2007-12-27T02:46:00.000+01:00</published><updated>2012-01-05T21:09:45.295+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-05T21:09:45.295+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="windows" /><title>"Memoria insufficiente" durante la copia di files in Windows Vista</title><content type="html">Incredibile ma vero! Copiare files in &lt;span style="font-weight: bold;"&gt;Windows Vista&lt;/span&gt; è un problema!&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://blogs.zdnet.com/hardware/images/screenshot-file-copying-err_sm.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://blogs.zdnet.com/hardware/images/screenshot-file-copying-err_sm.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Questa davvero non me l'aspettavo, eppure, durante la copia di alcuni files da un hard disk esterno in &lt;span style="font-weight: bold;"&gt;Windows Vista&lt;/span&gt;, un messaggio d'errore mi avvisa sull'impossibilità di continuare l'operazione richiesta: &lt;span style="font-style: italic;"&gt;"Memoria insufficiente per completare l'operazione"&lt;/span&gt;!&lt;br /&gt;E menomale che si trattava di una semplice copia di files su un sistema con &lt;span style="font-weight: bold;"&gt;2GB&lt;/span&gt; di &lt;span style="font-weight: bold;"&gt;RAM!&lt;/span&gt;&lt;br /&gt;Non solo! Il problema potrebbe anche non manifestarsi esplicitamente per cui l'unico modo di rendersene conto rimarrebbe quello di confrontare le proprietà della cartella di origine con quella di destinazione...!&lt;br /&gt;Non ci posso credere! Temo per qualche errore causato dalla mia configurazione &lt;span style="font-style: italic;"&gt;hardware/software &lt;/span&gt;e invece, con una semplice ricerca sul &lt;span style="font-style: italic;"&gt;web&lt;/span&gt;, salta fuori che il &lt;span style="font-weight: bold;"&gt;bug &lt;/span&gt;è ben noto e che un &lt;span style="font-style: italic;"&gt;hotfix&lt;/span&gt; verrà incluso nel &lt;span style="font-weight: bold;"&gt;Service Pack 1&lt;/span&gt; di &lt;span style="font-weight: bold;"&gt;Windows Vista&lt;/span&gt;.&lt;br /&gt;Indagando ulteriormente scopro che il problema è legato alla gestione degli &lt;span style="font-weight: bold;"&gt;attributi estesi&lt;/span&gt; in &lt;span style="font-weight: bold;"&gt;Esplora risorse&lt;/span&gt;: visitare l'&lt;a href="http://support.microsoft.com/?scid=kb%3Ben-us%3B942435&amp;amp;x=6&amp;amp;y=11"&gt;articolo&lt;/a&gt; presente nel sito del &lt;span style="font-weight: bold;"&gt;Supporto Tecnico Microsoft&lt;/span&gt; per ulteriori (pochi) dettagli.&lt;br /&gt;Il problema potrebbe presentarsi quando si tenta di copiare oltre &lt;span style="font-weight: bold;"&gt;16.400 &lt;/span&gt;files in una sola volta ed è maggiormente riscontrabile se è installato &lt;span style="font-weight: bold;"&gt;Kaspersky&lt;/span&gt; (ver. &lt;span style="font-weight: bold;"&gt;6&lt;/span&gt; o &lt;span style="font-weight: bold;"&gt;7&lt;/span&gt;), seppure il nocciolo del problema risiede in una "perdita di memoria" causata esclusivamente da &lt;span style="font-weight: bold;"&gt;Windows Vista &lt;/span&gt;&lt;span&gt;(vedi &lt;a href="http://blogs.zdnet.com/hardware/?p=829"&gt;articolo&lt;/a&gt; su &lt;span style="font-weight: bold;"&gt;ZDNet&lt;/span&gt;). &lt;/span&gt;&lt;br /&gt;Se proprio non ce la fate ad attendere il rilascio del &lt;span style="font-weight: bold;"&gt;SP1&lt;/span&gt; potete sempre &lt;span style="font-weight: bold;"&gt;&lt;/span&gt;richiedere l'&lt;span style="font-style: italic;"&gt;hotfix&lt;/span&gt; a &lt;span style="font-weight: bold;"&gt;Microsoft&lt;/span&gt; oppure utilizzare comandi alternativi come &lt;span style="font-weight: bold;"&gt;RoboCopy &lt;/span&gt;che non risentono del problema... io, a dire il vero, ho effettuato la copia riavviando con un &lt;span style="font-weight: bold;"&gt;altro&lt;/span&gt; sistema operativo... &lt;span style="font-style: italic;"&gt;fidarsi di un sistema operativo Microsoft è bene ma affidarsi&lt;/span&gt; &lt;span style="font-style: italic;"&gt;a un altro, quando possibile, è decisamente meglio! &lt;/span&gt;&lt;br /&gt;;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-5370279413469442559?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/h0c9kM-QGwbbftG_STPQcTylqBs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/h0c9kM-QGwbbftG_STPQcTylqBs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/h0c9kM-QGwbbftG_STPQcTylqBs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/h0c9kM-QGwbbftG_STPQcTylqBs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/xZ95Kd88dsU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/5370279413469442559/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=5370279413469442559" title="1 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/5370279413469442559?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/5370279413469442559?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/xZ95Kd88dsU/memoria-insufficiente-durante-la-copia.html" title="&quot;Memoria insufficiente&quot; durante la copia di files in Windows Vista" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2007/12/memoria-insufficiente-durante-la-copia.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEAFQ3s8fyp7ImA9WxZQFUQ.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-6431218532843295327</id><published>2007-12-10T01:29:00.001+01:00</published><updated>2008-02-21T12:18:32.577+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-02-21T12:18:32.577+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="hardware" /><title>Maledetto 'setmax' e partizione HPA dei notebook DELL!</title><content type="html">Affidandosi a &lt;span style="font-weight: bold;"&gt;Google&lt;/span&gt; e alle ricerche &lt;span style="font-style: italic;"&gt;fai-da-te&lt;/span&gt;&lt;span&gt; è facile sentirsi onnipotenti dinanzi a un qualunque problema ci si presenti... qualche volta, però, il prezzo da pagare è superiore alla nostra negligenza e i tentativi di rimediare ai danni causati difficilmente trovano lo stesso numero di risultati tra quelli ricercati nei motori di ricerca...&lt;br /&gt;Dopo il breve sfogo introduttivo, eccovi "riassunta" la triste vicenda...&lt;br /&gt;Un bel giorno d'inverno (circa due settimane fa), dopo aver valutato che il mio nuovo notebook della &lt;span style="font-style: italic;"&gt;Dell&lt;/span&gt; (un &lt;span style="font-weight: bold;"&gt;XPS M1330&lt;/span&gt;) funzionava troppo bene per non metterci mano, decido di abbandonare il buon vecchio &lt;span style="font-weight: bold;"&gt;VMWare&lt;/span&gt; per installare la mia distribuzione di &lt;span style="font-weight: bold;"&gt;Ubuntu&lt;/span&gt; direttamente in una partizione dedicata... a dire il vero, nel mio HD di "soli" &lt;span style="font-weight: bold;"&gt;160GB&lt;/span&gt;, le &lt;span style="font-weight: bold;"&gt;7&lt;/span&gt; partizioni già accuratamente realizzate non sembravano sufficienti a contenere un ulteriore sistema operativo, ed ecco quindi la pensata del secolo: &lt;span style="font-style: italic;"&gt;"perchè non liberarsi di quella fastidiosa partizione HPA nascosta a fine disco che contiene il MAI avviato &lt;span&gt;nonchè inutilizzato &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;Dell MediaDirect&lt;/span&gt;?"&lt;br /&gt;&lt;/span&gt;L'idea di base, già esaltante di per se in quanto mi avrebbe allungato la pausa studio di almeno un'altra mezzoretta (in periodo d'esami ogni scusa è buona!), era resa ancora più accattivante considerando la successiva possibilità di avviare &lt;span style="font-weight: bold;"&gt;Linux&lt;/span&gt; direttamente dal tasto &lt;span style="font-weight: bold;"&gt;MediaDirect&lt;/span&gt; piuttosto che da uno spartano &lt;span style="font-style: italic;"&gt;boot manager&lt;/span&gt;...&lt;br /&gt;Sfruttando l'ingegnoso meccanismo messo a punto da &lt;span style="font-style: italic;"&gt;Dell&lt;/span&gt;, infatti, è possibile fare avviare la partizione &lt;span style="font-weight: bold;"&gt;HPA&lt;/span&gt; nascosta a fine disco grazie ad un semplice quanto efficace &lt;span style="font-style: italic;"&gt;codice di avvio&lt;/span&gt; contenuto nell'&lt;span style="font-weight: bold;"&gt;MBR&lt;/span&gt; del disco: tale &lt;span style="font-style: italic;"&gt;boot code&lt;/span&gt; si preoccupa semplicemente di cambiare temporaneamente il &lt;span style="font-style: italic;"&gt;tipo&lt;/span&gt; della partizione, nella &lt;span style="font-style: italic;"&gt;partition table&lt;/span&gt; del disco, &lt;/span&gt;&lt;span&gt;da &lt;span style="font-weight: bold;"&gt;HPA &lt;/span&gt;a &lt;span style="font-weight: bold;"&gt;FAT32&lt;/span&gt; e di avviarla rendendola &lt;span style="font-style: italic;"&gt;attiva&lt;/span&gt;...&lt;br /&gt;Non sembra neppure tanto complesso da fare, penso tra me e me, se solo riuscissi a far vedere quella porzione di disco al CD di installazione di &lt;span style="font-weight: bold;"&gt;Ubuntu&lt;/span&gt;! Ma inutile scervellarsi quando una soluzione esisterà senz'altro sul web.. qualcuno l'avrà già pensata, no?&lt;br /&gt;E infatti digitando su &lt;span style="font-weight: bold;"&gt;Google&lt;/span&gt; &lt;span style="font-style: italic;"&gt;"Dell HPA linux" &lt;/span&gt;mi consolo, per un attimo, di non essere l'unico esaurito che non ha nient'altro di meglio da fare che farsi venire in mente queste strane fantasie... i &lt;span style="font-weight: bold;"&gt;49.900&lt;/span&gt; risultati (esatti) della ricerca parlano chiaro: l'idea è senz'altro fattibile, non resta che vedere &lt;span style="font-style: italic;"&gt;come&lt;/span&gt;...&lt;br /&gt;Il primo risultato che viene fuori sembra proprio fare al caso mio e mi sorprende per come, ancora una volta, la funzione &lt;span style="font-style: italic;"&gt;"mi sento fortunato"&lt;/span&gt; di &lt;span style="font-weight: bold;"&gt;Google&lt;/span&gt; (mai utilizzata) ci avrebbe azzeccato in pieno: &lt;span style="font-style: italic;"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;HowTo su come installare Linux sulla partizione HPA dei notebook DELL"!&lt;br /&gt;&lt;/span&gt;Il simpatico autore della "guida" (scopiazzata a dire il vero da alcune, più datate, inglesi) inserisce fin da subito il suo &lt;span style="font-style: italic;"&gt;disclaimer&lt;/span&gt; che pare più uno slogan: "&lt;span style="text-transform: uppercase; text-decoration: underline; font-weight: 700;"&gt;non mi ritengo in alcun modo responsabile&lt;/span&gt; per eventuali danni provocati  al notebook"&lt;br /&gt;-.-&lt;br /&gt;Che poi, dico io, a che cavolo servono sti "lavaggi di mani" se poi "alzargli le mani", su internet, non è possibile?!? di che cavolo si spaventano che devono sempre pararsi il (_0_)?&lt;br /&gt;Voglio vedere se scrivendo &lt;span style="font-style: italic;"&gt;"aprite il vostro computer e sputateci dentro che si raffredda meglio"&lt;/span&gt; ora c'è qualcuno che mi contatta per dirmi che non l'ho avvisato sui possibili effetti collaterali del catarro! Solo &lt;span style="font-style: italic;"&gt;Homer Simpson&lt;/span&gt; era capace di fare i "buchi della velocità" alla macchina, picchiando col picone sul cofano, perché gli avevano detto che così andava più veloce! Ma questo è un altro discorso, per quanto più esilarante...&lt;br /&gt;Fatto sta che se quella benedetta frase avesse suscitato sufficientemente il mio incoscio, forse tutto il seguito me lo sarei in qualche modo risparmiato... ma acceleriamo un pochino...&lt;br /&gt;Leggendo quella ed altre guide, salta fuori la presenza di un programmino scritto in &lt;span style="font-weight: bold;"&gt;C &lt;/span&gt;dal nome &lt;span style="font-style: italic;"&gt;"setmax"&lt;/span&gt; che sembrerebbe possa risolvere il problema (ora vi sarete scordati qual è, ma se rileggete sopra si dovrebbe capire) andando a modificare il "numero di settori massimo indirizzabile" nell'HD. In sostanza un modo per far vedere la partizione nascosta a Linux...&lt;br /&gt;Ok.. eseguo il maledetto comando e riavvio, come indicato nella guida, per installare &lt;span style="font-weight: bold;"&gt;Ubuntu&lt;/span&gt;...&lt;br /&gt;Poteva mai funzionare? potevano davvero bastare 10 minuti per risolvere il problema?&lt;br /&gt;Ovviamente NO!&lt;br /&gt;Il &lt;span style="font-style: italic;"&gt;live CD&lt;/span&gt; di &lt;span style="font-weight: bold;"&gt;Ubuntu&lt;/span&gt;, ora, non solo non vede quell'ultimo spazio in fondo al disco ma comincia a cacciar fuori una serie di errori interminabili su tutte le partizioni che prima montava senza problemi!&lt;br /&gt;E non solo!&lt;br /&gt;La guida diceva che al successivo riavvio tutto sarebbe tornato come prima e invece, con amara sorpresa, scopro che neppure &lt;span style="font-weight: bold;"&gt;Windows Vista&lt;/span&gt; si avvia più correttamente: la schermata di avvio persiste per parecchio tempo fino a quando una &lt;span style="font-weight: bold;"&gt;schermata blu&lt;/span&gt;, visibile per una frazione di secondo, indica la presenza di un qualche &lt;span style="font-weight: bold;"&gt;problema di I/O&lt;/span&gt; facendo riavviare di botto la macchina!&lt;br /&gt;Dopo una serie, anch'essa interminabile, d'imprecazioni tento in ogni modo di risolvere il problema cercando di ripristinare tutto come era prima: riavvio &lt;span style="font-weight: bold;"&gt;Linux &lt;/span&gt;e rieseguo il comando &lt;span style="font-style: italic;"&gt;setmax&lt;/span&gt; specificando il numero massimo di settori indirizzabili come dichiarato nelle specifiche tecniche dell'HD. Riavvio e Linux sembra ora montare nuovamente tutte le partizioni. Riavvio tentando invano di fare avviare &lt;span style="font-weight: bold;"&gt;Vista &lt;/span&gt;ma... niente da fare!&lt;br /&gt;Riavvio &lt;span style="font-weight: bold;"&gt;Linux&lt;/span&gt;, faccio un &lt;span style="font-weight: bold;"&gt;backup &lt;/span&gt;di tutte le partizioni (che fortunatamente &lt;span style="font-weight: bold;"&gt;Ubuntu &lt;/span&gt;continua a montare correttamente) e riavvio tentando di usare CD avviabili con le &lt;span style="font-style: italic;"&gt;utility di recovery &lt;/span&gt;più disparate (&lt;span style="font-weight: bold;"&gt;Norton&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Acronis&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;O&amp;amp;O&lt;/span&gt;) ma... NULLA! nessuna di queste riesce a leggere il disco! il problema sembra risiedere nella tabella delle partizioni, forse alterata durante una delle fasi precedenti...&lt;br /&gt;Ok, mi ripeto tra me e me, ho fatto una copia completa dell'&lt;span style="font-weight: bold;"&gt;MBR&lt;/span&gt;... basterà ripristinare la &lt;span style="font-style: italic;"&gt;partition table&lt;/span&gt; e tutto tornerà come prima, no?!?&lt;br /&gt;Macchè! Il disco sembra aver riportato danni irreversibili! Anche il &lt;span style="font-weight: bold;"&gt;BIOS &lt;/span&gt;ora riconosce solo una parte del disco, dicendo che si tratta di un HD da &lt;span style="font-weight: bold;"&gt;130GB&lt;/span&gt; invece di &lt;span style="font-weight: bold;"&gt;160GB&lt;/span&gt;!&lt;br /&gt;Sarà davvero così? Non c'è più nulla da fare???&lt;br /&gt;Non mi arrendo e tento tutte le strade: smonto l'HD, lo collego al PC desktop di casa e tento il ripristino delle partizioni con applicazioni come &lt;span style="font-weight: bold;"&gt;Partition Recovery&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;DiskDoctor&lt;/span&gt; e lo spartano, ma molto più funzionale, &lt;span style="font-weight: bold;"&gt;TestDisk&lt;/span&gt;...&lt;br /&gt;Riesco fortunatamente a recuperare la maggior parte delle partizioni ma quella di &lt;span style="font-weight: bold;"&gt;Windows Vista &lt;/span&gt;e quella dei documenti (praticamente le due più importanti) sembrano essere proprio irrecuperabili...&lt;br /&gt;Ok, mi arrendo... non mi conviene più di tanto insistere... ho una copia dei dati, un'immagine dell'intero sistema operativo (fatta con &lt;span style="font-weight: bold;"&gt;Acronis&lt;/span&gt;, che comunque ora come ora non riconosce il disco) e un esame da studiare!&lt;br /&gt;Decido quindi di &lt;span style="font-weight: bold;"&gt;formattare&lt;/span&gt; tutto il disco a &lt;span style="font-weight: bold;"&gt;basso livello&lt;/span&gt; e ripristinare con calma tutti i dati... tra l'altro, a leggere dal sito, il CD della &lt;span style="font-weight: bold;"&gt;Seagate&lt;/span&gt; possiede un'opzione che consente di ripristinare la capacità dell'HD con quella dichiarata in fabbrica, forse l'unico modo per farlo tornare come nuovo!&lt;br /&gt;Scarico l'&lt;span style="font-weight: bold;"&gt;ISO&lt;/span&gt; del CD (&lt;span style="font-weight: bold;"&gt;SeaTools&lt;/span&gt;), lo masterizzo dal computer di casa, lo inserisco nel portatile e avvio... pronto ormai a farla finita!&lt;br /&gt;Nooo! non ci credo! anche il CD della &lt;span style="font-weight: bold;"&gt;Seagate&lt;/span&gt;, quello che di regola serve ad effettuare proprio operazioni a basso livello sull'hard disk, si blocca con un messaggio di errore in fase di caricamento:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"Invalid opcode XXX YYY ZZZ ... ... "&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;E' una condanna! comincio a credere che qualcuno ce l'abbia con me! Non è possibile!!!&lt;br /&gt;Con molta pazienza (e, credetemi, ce ne vuole davvero tanta) contatto il supporto tecnico della &lt;span style="font-weight: bold;"&gt;Seagate&lt;/span&gt;, una chat virtuale molto rapida e intuitiva messa a disposizione sul loro sito. Mi meraviglio della professionalità dell'interlocutore, sembra essere davvero all'altezza del problema! nientemeno si prende la briga di andarsi a leggere il codice &lt;span style="font-style: italic;"&gt;"setmax.c"&lt;/span&gt; per capire quale danno possa aver fatto questa maledetta applicazione scritta in &lt;span style="font-weight: bold;"&gt;C&lt;/span&gt;! Mi conferma della possibilità, eventuale, di risolvere il problema settando le impostazioni di fabbrica dell'HD con la loro applicazione. A questo punto gli spiego della mia impossibilità nell'avviare il loro disco di &lt;span style="font-style: italic;"&gt;utilities&lt;/span&gt; e mi conferma che comunque è l'unica strada perseguibile: accedere al disco in altri modi (tipo adattatore &lt;span style="font-weight: bold;"&gt;SATA-USB&lt;/span&gt;) non consentirebbe infatti l'uso di quella particolare funzione. Mi costringe a "bruciare" un secondo e un terzo CD, accusando la possibile presenza di errori durante la masterizzazione (stiamo parlando di &lt;span style="font-weight: bold;"&gt;2MB&lt;/span&gt; schifosi, masterizzati a &lt;span style="font-weight: bold;"&gt;8x&lt;/span&gt; su un CD &lt;span style="font-weight: bold;"&gt;Verbatim &lt;/span&gt;da &lt;span style="font-weight: bold;"&gt;700Mb &lt;/span&gt;che supporta anche scritture a &lt;span style="font-weight: bold;"&gt;52x&lt;/span&gt;!) e alla fine si arrende pure lui!&lt;br /&gt;Niente da fare, l'HD va spedito in garanzia e sostituito con un altro! Qualche danno fisico deve essere, a suo avviso, la causa di tutti i problemi...&lt;br /&gt;Abbandonata quindi la conversazione col supporto tecnico, mi accingo, amareggiato, a compilare la form per la richiesta di sostituzione in garanzia del disco...&lt;br /&gt;Ma allora è proprio destino! La form sembra non voler riconoscere il seriale del mio disco e non mi fa andare avanti! provo e riprovo ma non si prende neppure solo il modello!&lt;br /&gt;Basta! Stacco l'HD dal computer e il fuoco scoppiettante davanti a me sembra incentivarmi a farla davvero finita! La morte sarebbe stata però molto più lenta e cruenta perchè l'avrei senz'altro scaraventato prima a terra, cercando di colpirlo su uno spigolo, e solo dopo averlo fatto a pezzettini infinitesimali con l'accetta l'avrei consegnato all'inferno del camino!&lt;br /&gt;Nel mentre che lo innalzo con due mani, l'ultima fioca idea sovviene all'istinto assassino: e se lo montassi su un altro notebook?!? Se il CD della &lt;span style="font-weight: bold;"&gt;Seagate&lt;/span&gt; avesse problemi a partire solo sul mio computer?!? Tra l'altro l'errore &lt;span style="font-style: italic;"&gt;"invalid opcode" &lt;/span&gt;sembra più riferirsi a un'istruzione errata della CPU piuttosto che a un danno relativo all'HD! Chissà che sti nuovi &lt;span style="font-weight: bold;"&gt;Core 2 Duo Santa Rosa &lt;/span&gt;non siano supportati da questo schifoso applicativo!&lt;br /&gt;Tento quella che sarebbe stata in ogni caso l'ultima spiaggia... monto l'HD nel computer di una collega, inserisco il CD e avvio un po' titubante...&lt;br /&gt;Va'! Incredibile amici! Robe da non crederci! E il destino avverso che fine ha fatto? E' andato un secondo al cesso?!?&lt;br /&gt;Senza indugio effettuo subito il ripristino delle impostazioni di fabbrica... &lt;span style="font-style: italic;"&gt;et voilà &lt;/span&gt;l'HD ora è visto come un &lt;span style="font-weight: bold;"&gt;160GB&lt;/span&gt; col numero corretto di cilindri, testine e settori indirizzabili!&lt;br /&gt;Quasi quasi si potrebbe ritentare di ripristinare le partizioni... ma l'idea viene automaticamente cestinata dal mio cervello orami sotto stress...&lt;br /&gt;Formattazione a basso livello: è la scelta e la vendetta più giusta!&lt;br /&gt;Premo invio e la procedura parte lentamente senza possibilità di ritorno...&lt;br /&gt;E' fatta!  Ora posso "finalmente" tornare a studiare!!!&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-6431218532843295327?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/gfl9TYdd2PANNJ1joTyok8XYjzg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gfl9TYdd2PANNJ1joTyok8XYjzg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/gfl9TYdd2PANNJ1joTyok8XYjzg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gfl9TYdd2PANNJ1joTyok8XYjzg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/FL3Mj5n0pPI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/6431218532843295327/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=6431218532843295327" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/6431218532843295327?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/6431218532843295327?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/FL3Mj5n0pPI/maledetto-setmax-e-partizione-hpa-dei.html" title="Maledetto 'setmax' e partizione HPA dei notebook DELL!" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2007/12/maledetto-setmax-e-partizione-hpa-dei.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0ACQnkzeyp7ImA9WxZSEUQ.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-3211979076579511521</id><published>2007-11-30T21:15:00.000+01:00</published><updated>2008-01-24T17:22:43.783+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-01-24T17:22:43.783+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="programmazione" /><category scheme="http://www.blogger.com/atom/ns#" term="web" /><category scheme="http://www.blogger.com/atom/ns#" term="hacking" /><title>Quequero.org - Università Italiana Cracking</title><content type="html">Un buon punto di partenza (se non il migliore) per approfondire temi come &lt;span style="font-weight: bold; font-style: italic;"&gt;cracking &lt;/span&gt;e &lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;reverse engineering&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt; &lt;/span&gt;è l'&lt;span style="font-style: italic;"&gt;Università Italiana Cracking&lt;/span&gt; raggiungibile da questo insolito indirizzo (uno dei miei preferiti da parecchio tempo ;): &lt;a style="font-weight: bold;" href="http://quequero.org/"&gt;quequero.org&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Dalla &lt;span style="font-style: italic;"&gt;home page&lt;/span&gt;:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;"L'&lt;/span&gt;&lt;span style="font-style: italic;"&gt;Università Italiana Cracking&lt;/span&gt;&lt;span style="font-style: italic;"&gt; è una delle poche pagine italiane sul &lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;a class="info" href="http://quequero.org/Reversing"&gt;Reverse Engineering&lt;/a&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;, il nostro scopo è quello di trasmettere la conoscenza di una delle discipline più affascinanti e complesse dell'informatica. Su questo sito avrai modo di imparare il linguaggio &lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;a href="http://quequero.org/Assembly" title="Assembly"&gt;Assembly&lt;/a&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;, potrai iniziare seguendo i &lt;/span&gt;&lt;a style="font-style: italic;" href="http://quequero.org/Category:Corsi_UIC_Newbies" title="Category:Corsi UIC Newbies"&gt;Corsi di base&lt;/a&gt;&lt;span style="font-style: italic;"&gt;, e quando sarai più bravo potrai passare ai &lt;/span&gt;&lt;a style="font-style: italic;" href="http://quequero.org/Category:Corsi_UIC_Avanzati" title="Category:Corsi UIC Avanzati"&gt;Corsi avanzati&lt;/a&gt;&lt;span style="font-style: italic;"&gt;. Abbiamo anche una raccolta immensa di &lt;/span&gt;&lt;a style="font-style: italic;" href="http://quequero.org/Reversing" title="Reversing"&gt;Tutorial&lt;/a&gt;&lt;span style="font-style: italic;"&gt; dove vengono studiati migliaia di programmi differenti. &lt;/span&gt;&lt;span&gt;[...]&lt;/span&gt;&lt;span style="font-style: italic;"&gt;"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Una delle sezioni più coinvolgenti, a mio avviso, è quella dei &lt;span style="font-style: italic;"&gt;&lt;a href="http://quequero.org/Crackmes"&gt;CrackMe&lt;/a&gt;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span style="font-style: italic;"&gt; &lt;/span&gt;eseguibili appositamente creati per essere &lt;span style="font-style: italic;"&gt;crackati  &lt;/span&gt;e mantenersi, così, in allenamento!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;Dateci un'occhiata quando avete tempo! ;)&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-3211979076579511521?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/MwDdVVg4n_wcpUp3K_xK3XlV_H8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MwDdVVg4n_wcpUp3K_xK3XlV_H8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/MwDdVVg4n_wcpUp3K_xK3XlV_H8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MwDdVVg4n_wcpUp3K_xK3XlV_H8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/XMMmA3E6anI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/3211979076579511521/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=3211979076579511521" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/3211979076579511521?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/3211979076579511521?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/XMMmA3E6anI/universit-italiana-cracking.html" title="Quequero.org - Università Italiana Cracking" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2007/11/universit-italiana-cracking.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CU8GRHwyfip7ImA9WxVUEU8.&quot;"><id>tag:blogger.com,1999:blog-6613807574162095062.post-8313610605882435177</id><published>2007-11-15T23:55:00.013+01:00</published><updated>2009-03-15T14:30:25.296+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-03-15T14:30:25.296+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="programmazione" /><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="wiki" /><category scheme="http://www.blogger.com/atom/ns#" term="how-to" /><title>Cosa sono e come si usano i Threads</title><content type="html">I &lt;span style="font-weight: bold;"&gt;threads &lt;/span&gt;(= "&lt;span style="font-style: italic;"&gt;filo&lt;/span&gt;" o "&lt;span style="font-style: italic;"&gt;stringa&lt;/span&gt;") in &lt;span style="font-weight: bold;"&gt;Java &lt;/span&gt;rappresentano un "flusso di controllo sequenziale separato", ovvero dei segmenti di codice che vengono eseguiti, in parallelo (ovvero in "&lt;span style="font-style: italic;"&gt;fili&lt;/span&gt;" separati), all'interno dello spazio di memorizzazione di un processo. Un processo può eseguire più &lt;span style="font-style: italic;"&gt;threads &lt;/span&gt;contemporaneamente e, in genere, ne eseguirà uno per ogni attività che vuole svolgere in parallelo con le altre.&lt;br /&gt;&lt;br /&gt;In &lt;span style="font-weight: bold;"&gt;Java &lt;/span&gt;un &lt;span style="font-style: italic;"&gt;thread &lt;/span&gt;è rappresentato dalla classe &lt;a href="http://java.sun.com/javase/6/docs/api/java/lang/Thread.html"&gt;java.lang.Thread&lt;/a&gt; che consente l'esecuzione di oggetti "&lt;span style="font-style: italic;"&gt;runnable&lt;/span&gt;", ovvero che implementano l'interfaccia &lt;a href="http://java.sun.com/javase/6/docs/api/java/lang/Runnable.html"&gt;java.lang.Runnable&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Per creare dunque un oggetto &lt;span style="font-style: italic;"&gt;Thread &lt;/span&gt;è necessario crearne prima uno &lt;span style="font-style: italic;"&gt;Runnable&lt;/span&gt;, implementando all'interno di quest'ultimo, nel metodo &lt;span style="font-style: italic;"&gt;run()&lt;/span&gt;,  le operazioni da far svolgere al thread:&lt;br /&gt;&lt;pre name="code" class="brush: java; light: false"&gt;class MioRunnable implements Runnable {&lt;br /&gt;&amp;nbsp;&amp;nbsp;public void run(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//fai qualcosa...&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;MioRunnable r = new MioRunnable();&lt;br /&gt;new Thread(r).start();&lt;br /&gt;&lt;/pre&gt;La chiamata al metodo &lt;span style="font-style: italic;"&gt;start()&lt;/span&gt; serve ad eseguire il &lt;span style="font-style: italic;"&gt;thread &lt;/span&gt;appena creato.&lt;br /&gt;&lt;br /&gt;In realtà la stessa classe &lt;span style="font-style: italic;"&gt;Thread &lt;/span&gt;implementa l'interfaccia &lt;span style="font-style: italic;"&gt;Runnable &lt;/span&gt;fornendo un'implementazione a corpo vuoto del metodo &lt;span style="font-style: italic;"&gt;run()&lt;/span&gt;. Ciò consente di creare un &lt;span style="font-style: italic;"&gt;Thread &lt;/span&gt;estendendo direttamente la suddetta classe ed effettuando l'&lt;span style="font-style: italic;"&gt;overloading &lt;/span&gt;del metodo &lt;span style="font-style: italic;"&gt;run()&lt;/span&gt; per esplicitare le operazioni da svolgere:&lt;br /&gt;&lt;pre name="code" class="brush: java; light: false"&gt;class MioThread extends Thread {&lt;br /&gt;&amp;nbsp;&amp;nbsp;public void run(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//fai qualcosa...&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;MioThread t = new MioThread();&lt;br /&gt;t.start();&lt;br /&gt;&lt;/pre&gt;&lt;a style="font-weight: bold;" href="http://justshareit.pbwiki.com/JAVA+-+Cosa+sono+e+come+si+usano+i+Threads"&gt;[...] versione completa e aggiornata su &lt;span style="font-style: italic;"&gt;justshareit.pbwiki.com&lt;/span&gt; [...]&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6613807574162095062-8313610605882435177?l=just-share-it.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ILTOZGSwngUXNOjDw7jbQaca4Lc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ILTOZGSwngUXNOjDw7jbQaca4Lc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ILTOZGSwngUXNOjDw7jbQaca4Lc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ILTOZGSwngUXNOjDw7jbQaca4Lc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/JustShareIt/~4/aCnxBP0s4i0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://just-share-it.blogspot.com/feeds/8313610605882435177/comments/default" title="Commenti sul post" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=6613807574162095062&amp;postID=8313610605882435177" title="0 Commenti" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/8313610605882435177?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6613807574162095062/posts/default/8313610605882435177?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JustShareIt/~3/aCnxBP0s4i0/cosa-sono-e-come-si-usano-i-threads.html" title="Cosa sono e come si usano i Threads" /><author><name>Francesco Vadicamo</name><uri>https://profiles.google.com/116594189283143793920</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-O8z_ZPhmKkA/AAAAAAAAAAI/AAAAAAAAIb8/z5_0ALORaUk/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://just-share-it.blogspot.com/2007/11/cosa-sono-e-come-si-usano-i-threads.html</feedburner:origLink></entry></feed>

