venerdì 2 febbraio 2007
Conoscevo già questo servizio (credo di averne sentito parlare la prima volta verso giugno o luglio dell'anno scorso), ma non avevo mai avuto modo di utilizzarlo. L'ho provato solo in questi giorni... E mi pento di non averlo fatto prima. Per i pochi che ancora non lo sanno, se si utilizza JAJAH per effettuare chiamate tra numeri di rete fissa che sono entrambi registrati sul sito, LA TELEFONATA E' COMPLETAMENTE GRATUITA!
Per utilizzare questo servizio, non è necessario installare alcun software. E' sufficiente effettuare il login sul sito, quindi digitare il numero di telefono del destinatario e premere un tasto per avviare la chiamata. Dopo pochi istanti, il proprio telefono comincerà a squillare. Andando a rispondere, un messaggio invita ad attendere che l'interlocutore accetti la chiamata; quando ques'ultimo alza la cornetta, la telefonata si svolge sulla normale rete telefonica. Le conversazioni hanno dei limiti temporali, per la precisione si può arrivare fino a 1000 minuti al mese, 300 minuti settimanali e 60 minuti al giorno.
Se leggendo questo post vi è venuta la voglia di provare il servizio, visitate subito il sito di JAJAH 
I Gadget per la SideBar di Windows Vista sono basati su HTML, XMl e JavaScript. Nel caso in cui si vogliano creare Gadget che utilizzano codice .NET, è necessario un piccolo "trucco", illustrato in un interessante articolo apparso su CodeProject:
The idea is simple; create a small, lightweight .NET COM component that uses reflection to load any assembly and type. Then, that type can be called directly from JavaScript.
L'idea viene presentata attraveso la creazione di un gadget che verifica periodicamente la presenza di nuovi messaggi di posta in un account di Gmail.
Phalanger is a PHP language compiler for Microsoft .NET platform. Su CodeProject è disponibile un interessante articolo che spiega di cosa si tratta e mostra come utilizzarlo con Visual Studio 2005 per creare applicazioni sia Windows Forms sia ASP .NET. Il progetto, inoltre, è ospitato su CodePlex e si può trovare a questo indirizzo, insieme a faq, tutorial e documentazione.
Questa sera, appena ho avviato la riproduzione di un filmato in formato DivX, mi è stata segnalata la disponibilità di un aggiormento... La versione 6.5.1 del codec risolve alcuni bug della release precedente (che è stata rilasciata una settimana fa). La routine di installazione adesso visualizza come prima schermata un messaggio in cui informa che Windows Vista non è supportato al 100%: la riproduzione di file DivX non ha problemi, ma il programma DivX Converter non funziona correttamente su questo sistema operativo, mentre DivX Player e DivX Web Player richiedono che il tema del desktop sia Windows Vista Basic.
Sul sito http://www.regexlib.com è disponibile una grande raccolta di espressioni regolari pronte all'uso. Attualmente l'archivio ne comprende quasi 1500, facimente accessibili grazie ad una comoda funzione di ricerca.
Qualche giorno fa ho parlato della sezione di MSDN in cui sono presentate le
linee guida ufficiali di Microsoft per la progettazione di
interfacce grafiche per
Windows Vista. I contenuti sono ancora in fase di allestimento e proprio in questi giorni sono stati fatti diversi aggiornamenti, quindi se siete interessati all'argomento vi consiglio di visitarle spesso.
In molte applicazioni, quando si sposta il puntatore del mouse sopra un comando di menu, nella barra di stato appare un messaggio che ne illustra la funzionalità. Per aggiungere questa caratteristica ai propri programmi, basta specificare la descrizione del comando nella sua proprietà Tag, quindi inserire nel form il seguente codice:
1 #region Status Bar Message Methods
2
3 private ToolStripStatusLabel _statusBar;
4
5 private void InitMenuDescription(ToolStripStatusLabel statusBar)
6 {
7 foreach (ToolStripMenuItem menuItem in this.MainMenuStrip.Items)
8 {
9 menuItem.MouseEnter += new EventHandler(menu_MouseEnter);
10 menuItem.MouseLeave += new EventHandler(menu_MouseLeave);
11 foreach (ToolStripItem item in menuItem.DropDownItems)
12 {
13 item.MouseEnter += new EventHandler(menu_MouseEnter);
14 item.MouseLeave += new EventHandler(menu_MouseLeave);
15 if (item is ToolStripMenuItem)
16 this.AddStatusBarMenuMessage((ToolStripMenuItem)item);
17 }
18 }
19 _statusBar = statusBar;
20 }
21
22 private void AddStatusBarMenuMessage(ToolStripMenuItem item)
23 {
24 foreach (ToolStripItem subItem in item.DropDownItems)
25 {
26 subItem.MouseEnter += new EventHandler(menu_MouseEnter);
27 subItem.MouseLeave += new EventHandler(menu_MouseLeave);
28 if (subItem is ToolStripMenuItem)
29 this.AddStatusBarMenuMessage((ToolStripMenuItem)subItem);
30 }
31 }
32
33 private void menu_MouseEnter(object sender, EventArgs e)
34 {
35 ToolStripItem menu = ((ToolStripItem)sender);
36 if (menu.Tag != null)
37 {
38 string message = menu.Tag.ToString();
39 if (!message.EndsWith("."))
40 message += ".";
41 _statusBar.Text = message;
42 }
43 else
44 {
45 _statusBar.Text = string.Empty;
46 }
47 }
48
49 private void menu_MouseLeave(object sender, EventArgs e)
50 {
51 _statusBar.Text = string.Empty;
52 }
53
54 #endregion
La routine InitMenuDescription deve essere richiamata nel costruttore del fom, specificando l'oggetto su cui visualizzare le descrizioni dei menu. Ad esempio:
public Form1()
{
InitializeComponent();
InitMenuDescription(toolStripStatusLabel1);
}
Il funzionamento dell'algoritmo è semplice. Il metodo InitMenuDescription esamina il MainMenu del form e, ricorsivamente per ogni elemento, registra gli eventi MouseEnter e MouseLeave (righe 7-18). La routine di gestione dell'evento MouseEnter verifica che la proprietà Tag del comando su cui si trova il mouse sia impostata e, in tal caso, ne visualizza il contenuto all'interno della barra di stato (righe 36-46).
Cercando di effettuare il debug di un'applicazione Smart Device per piattaforma Pocket PC con l'emulatore incluso in Visual Studio 2005, durante il deploy dei file è possibile ottenere l'errore 0x80070070: Enough disk space. In questo caso, è necessario aumentare la dimensione della RAM assegnata all'emulatore. Allo scopo, bisogna chiudere l'emulatore, se è ancora in esecuzione, quindi andare nella finestra Options di Visual Studio e selezionare la categoria Devices, contenuta in Device Tools. A questo punto selezionare l'emulatore desiderato e fare clic sul pulsante Proprieties:
Nella finestra che si aprirà selezionare Emulator Options, quindi attivare la spunta a fianco dell'opzione Specify RAM size ed immettere il valore desiderato nella casella di testo sottostante:

E' stata da poco rilasciata la versione beta 3 di WinRAR 3.70:
- It is possible to set the string value "AppData" in Registry key HKEY_CURRENT_USER\Software\WinRAR\Paths to override the default %appdata%\WinRAR path for WinRAR settings. For example, if you wish to store theme files in WinRAR folder, set this value to "c:\Program Files\WinRAR".
- Total progress bar is displayed when unpacking UDF ISO files.
- In previous versions archive icons were not changed when selecting a new WinRAR theme in Windows Vista.
- WinRAR displays a warning if resulting archive is self-extracting and archive size exceeds 4 GB. Windows cannot run executables of such size.
- Corrections in ISO processing code.
Per il download, clic qui.