Emanuele Mattei

Il blog di Emanuele Mattei.....il suo diario :-)

Blog Amici

Compact Framework

Web e win application

Siti Gratuiti

Siti Vari

Tools per .Net

Chi sono

elenco siti

ottobre 2006 - Posts

Asp.Net visualizzare un menu di scelta rapida tramite il pulsante destro del mouse

Trucco: Javascript - Visualizzare un menu con collegamento ipertestuale, tramite tasto destro.

Tramite javascript possiamo inserire un meno con le varie voci a collegamento ipertestuale (che riguardano siti) , quando si fa click sulla pagina con il tasto destro del mouse.

I frammenti di codice da inserire sono due, il primo va posizionato dove si trova il tag <head> mentre il secondo dove si trova il tag <body>

Il codice riportato di seguito, va inserito subito dopo il tag <head>

    <STYLE>
        #contextMenu {
        position: absolute;
        visibility: hidden;
        width: 120px;
        background-color: lightgrey;
        layer-background-color: lightgrey;
        border: 2px outset white;
         }

        .A:Menu {
        color: black;
        text-decoration: none;
        cursor: default;
        width: 100%
        }

        .A:MenuOn {
        color: white;
        text-decoration: none;
        background-color: darkblue;
        cursor: default;
        width: 100%
        }
    </STYLE>

    <SCRIPT>
        var menu;
        function showMenu (evt) {
            if (document.all) {
            document.all.contextMenu.style.pixelLeft = event.clientX;
            document.all.contextMenu.style.pixelTop = event.clientY;
            document.all.contextMenu.style.visibility = 'visible';
            return false;
        }
            else if (document.layers) {
            if (evt.which == 3) {
            document.contextMenu.left = evt.x;
            document.contextMenu.top = evt.y;
            document.contextMenu.onmouseout =
            function (evt) { this.visibility = 'hide'; };
            document.contextMenu.visibility = 'show';
            return false;
                }
            }
            return true;
        }
        if (document.all)
        document.oncontextmenu =showMenu;
        if (document.layers) {
        document.captureEvents(Event.MOUSEDOWN);
        document.onmousedown = showMenu;
        }


        </SCRIPT>
 

Mentre il codice riportato di seguito va inserito subito dopo il tag <body>

        <DIV ID="contextMenu"
            ONMOUSEOUT="menu = this; this.tid = setTimeout
            ('menu.style.visibility = \'hidden\'', 20);"
            ONMOUSEOVER="clearTimeout(this.tid);">
            <A HREF="http://www.shareoffice.it";
            CLASS="menu"
            ONMOUSEOVER="this.className = 'menuOn'"
            ONMOUSEOUT="this.className = 'menu';">
            sito shareoffice.it
            </A>
        <BR>
            <A HREF="http://blog.shareoffice.it/emanuele/"; CLASS="menu"
            ONMOUSEOVER="this.className = 'menuOn'"
            ONMOUSEOUT="this.className = 'menu';">
        Blog personale
        </A>
        </DIV>

A questo punto, salvate la vostra pagina html, e aprite tale file dal vostro browser, fate click con il tasto destro, e vedrete un menu con due voci, che riportato ai due siti impostati.

Riconoscere la versione di windows mobile

Rilevare la versione di windows Mobile

Di seguito riporto un breve schema delle versioni di windows mobile, per fare chiarezza sulle versioni che si trovano in commercio (le più recenti), tramite la  finestra about o informazioni su, possiamo sapere il sistema operativo di windows mobile, di seguito si riporta la versione per le varie diciture per la parola windows ce. La parola voce: indica il testo che si può trovare nella finestra informazioni su o about, mentre la parola versione, corrisponde alla versione del sistema operativo windows mobile

Voce: Windows CE 5.0

    Versione: Windows Mobile 5.0

Voce: Windows CE 4.2:

    Versione: Windows Mobile 2003 oppure Windows Mobile 2003 Second Edition
 

Voce: Windows CE 3.0:

    Versione: Pocket PC 2002

    Versione:Pocket PC 2002 Phone Edition

   Versione: Pocket PC 2000,

  Versione: Pocket PC Phones

  Versione: SmartPhone 2002

  Versione: Handheld PC 2000

  Versione: BE-300

Questionario informativo su visual studio

Da questo sito http://c2.microsoft.fr/fdaec9c6334c48ffaaa9d78b7b9f9210/Default.aspx?elng=1040 potete partecipare alla compilazione di un questionario di valutazione, sul prodotto Visual Studio.

Tale questionario (a mio avviso importante) permetterà di capire le nuove implementazione e correzioni da applicare alla nuova versione del prodotto Visual Studio 2007 (forse) (attualmente orcas )

Allora perchè non parteicpare :-)

smart device rilevare la versione di windows tramite visual basic net e c# in ambiente compact framework

Trucco Compact Framework: Rilevare la versione di Windows in cui gira il programma. Visual Basic .Net e C#

Tramite la proprietà major della classe Environment, possiamo ottenere la versione del sistema operativo di Windows mobile.

Di seguito si riporta un esempio di codice.

Vb.Net

If System.Environment.OSVersion.Version.Major < 5 Then

    MessageBox.Show("Versione 2003")

Else

    MessageBox.Show("Versione 5.0")

End If

C#

if (System.Environment.OSVersion.Version.Major < 5)

{

MessageBox.Show("Versione 2003");

}

else

{

MessageBox.Show("Versione 5.0");

}

smart device rilevare il nome del dispositivo in ambiente compact framework tramite visual basic net e c#

Trucco Smart Device: Visualizzare il nome del dispositivo in una rete tramite visual basic.net e c#, compact framework 2.0

Di seguito si riporta un frammento di codice per rilevare il nome del dispositivo in una rete. Tramite il metodo gethostname della classe Dns, possiamo rilevare tale valore.

Vb.Net

Dim deviceName As String = System.Net.Dns.GetHostName()

MsgBox("Nome: " & deviceName)

C#

string deviceName = System.Net.Dns.GetHostName();

MessageBox.Show("Nome: " + deviceName);

smart device verificare tramite visual basic net e c# se il dispositivo è connesso alla rete

Trucco: Compact Framework - Verificare che il dispositivo è connesso alla rete tramite Visual Basic .Net e C#  in ambiente mobile

Tramite il namespace .net e le classi dns e iphostentry, possiamo verificare che il dispositivo sia collegato alla rete. Di seguito si riporta un frammento di codice.

Namaspace

Vb.Net

Imports System.Net

C#

using System.Net;

Codice

Vb.Net

Try

Dim strHostNome As String = Dns.GetHostName()

Dim Host As IPHostEntry = Dns.GetHostByName(strHostNome)

if  Host.AddressList(0).ToString() <> IPAddress.Loopback.ToString() then

MessageBox.Show("connesso");

else

    MessageBox.Show("connesso");

end if

 

Catch ex As Exception

MessageBox.Show(ex.Message)

MessageBox.Show("non connesso");

End Try

 

C#

 

try

{

string strHostNome = Dns.GetHostName();

IPHostEntry Host = Dns.GetHostByName(strHostNome);

if ( Host.AddressList[0].ToString() != IPAddress.Loopback.ToString()) == true;

    {

        MessageBox.Show("connesso");

    }

 

else

    {

        MessageBox.Show("non connesso");

    }

}

catch (Exception ex )

{

MessageBox.Show(ex.Message);

MessageBox.Show("non connesso");

}

compact framework cambiare lo stato (reset o standby) del dispositivo tramite visual basic net e c#

Trucco Compact Framework: Cambiare lo stato (Reset o Standby) del dispositivo tramite Visual Basic net e C# in ambiente windows mobile 2003se

Tramite l'api SetSystemPowerState è possibile avviare o spegnere il dispositivo mobile si con il compact framework 1.0 che 2.0. Di seguito si riportano i frammenti di codice in visual Basic Net e C#

Vb.Net

Imports System.Runtime.InteropServices

C#

using System.Runtime.InteropServices;

Vb.Net

'dichiarazione a livello di classe

Const POWER_STATE_OFF As Integer = &H20000

Const POWER_STATE_SUSPEND As Integer = &H200000

Const POWER_FORCE As Integer = 4096

<DllImport("Coredll.dll")> _

Private Shared Function SetSystemPowerState(ByVal psState As String, ByVal StateFlags As Integer, ByVal Options As Integer) As Integer

End Function

C#

// dichiarazione a livello di classe

const int POWER_STATE_OFF = 0x0020000;

const int POWER_STATE_SUSPEND = 0x00200000;

const int POWER_FORCE = 0x00001000;

private void button1_Click(object sender, EventArgs e)

[DllImport("Coredll.dll")]

static extern int SetSystemPowerState(string psState , int StateFlags , int Options ) ;

Vb.Net

'es. da inserire in un evento click del pulsante

SetSystemPowerState(Nothing, POWER_STATE_SUSPEND, POWER_FORCE)

C#

// es. da inserire in un evento click del pulsante

SetSystemPowerState(null, POWER_STATE_OFF, POWER_FORCE);

Visual Basic.Net: creazione di una tabella pivot

 

Trucco: Excel - Creare una tabella pivot in Visual Basic .Net

Si ringranzia Pierluigi rpierluigi@hotmail.com per aver messo a disposizione della comunità il seguente trucco.

Il seguente script, permette di creare una tabella pivot in Excel  tramite il linguaggio Visual Basic .Net, partendo da un file excel già impostato con determinate campi e valori.

Vediamo di seguito tale codice:

Aggiungere al progetto il riferimento a microsoft Excel.

Nel progetto inseriamo il namespace.

Imports System

Imports Microsoft.Office.Interop

 

Si crea una funzione la quale accetta come argomento il percorso e nome del file. La funzione avrà il compito di creare gli oggetti (excel.applicaton, excel.workbook, excel.worksheet) per la gestione del file di excel. Tramite il metodo PivotTableWizard dell'oggetto worksheet e tramite il metodo PivotTables dell'oggetto ActiveSheet si crea la tabella pivot.

Di seguito si riporta la funzione che svolgerà tale attività.

Private Function TabellaPivot(ByVal NomeFileIn As String)

Dim PivotTabella As Excel.Application

Dim XlwbDati As Excel.Workbook

Dim XlshDati As Excel.Worksheet

'instanzio l'oggetto application

PivotTabella = CreateObject("Excel.Application")

XlwbDati = PivotTabella.Workbooks.Open(NomeFileIn)

 

Try

'lo rendo visibile

PivotTabella.Visible = True

'Mi posiziono sul foglio attivo

XlshDati = XlwbDati.ActiveSheet

 

'Oggetto corretto per Tabella Pivot

With XlshDati

.PivotTableWizard(SourceType:=Excel.XlSourceType.xlSourceSheet, _

SourceData:=.Cells(1, 1).CurrentRegion, TableDestination:="", _

TableName:="Multidim1", HasAutoFormat:=True, _

SaveData:=True)

End With

With XlwbDati.ActiveSheet

.PivotTables("Multidim1").AddFields(RowFields:= _

"Cognome Nome", ColumnFields:="Mese", PageFields:="Anno")

.PivotTables("Multidim1").PivotFields("GG Totali"). _

Orientation = 4 ' xlDataField

.Name = "AnalisiTrasf"

End With

Catch ex As Exception

MessageBox.Show(ex.Message, "Programma Excel", MessageBoxButtons.OK, MessageBoxIcon.Error)

Finally

'distruggo gli oggetti creati

PivotTabella = Nothing

XlshDati = Nothing

XlwbDati = Nothing

End Try

 

Return Nothing

End Function

 

Ottimo punto di partenza, nonché ottima tecnica per chi deve scrivere applicazioni di livello avanzato, in ambiente Microsoft Excel. Si ringrazia Pierluigi per aver condiviso con la comunità questa interessante soluzione, un augurio di vederlo presto in comunità con un suo blog. Ti aspettiamo :-) .

Tramite la parola Download è possibile scaricare il file di esempio di questo breve articolo.

Download esempio

Posted: ott 08 2006, 04:44 by emanuelem | with no comments
Filed under:
Rilevare il codice identificativo tramite visual basic net e c# in ambiente compact framework 1.0 e 2.0

Da questo sito http://blogs.devleap.com/emanuelem/articles/14471.aspx potete leggere un articolo su come rilevare il codice identificativo del dispositivo mobile, tramite Visual Basic Net e C#.

Che dirvi ... buona lettura :-)

FT: Creazione di un menu di scelta rapida per la registrazione delle Dll e ActiveX (ocx)

FT: Creazione di un file .reg per creare un menu di scelta rapida per la registrazione di dll e activeX (.ocx)

Eccomi con un fuori tema, questa volta su windows. Attenzione questo trucco modificherà il registro di sistema, per tanto non sono responsabile di un uso errato o problemi che potrebbero derivare. Per tanto consiglio di fare molta ma molta attenzione.

Se vogliamo inserire nel menu di scelta rapida (tasto destro del mouse) una voce che permetta la registrazione e deregistrazione dei componenti .dll e ActiveX (.ocx). Creare un file .reg tramite notepad, con il seguente codice.


[HKEY_CLASSES_ROOT\.dll]
"Content Type"="application/x-msdownload"
@="dllfile"

[HKEY_CLASSES_ROOT\dllfile]
@="Application Extension"

[HKEY_CLASSES_ROOT\dllfile\Shell\Register\command]
@="regsvr32.exe \"%1\""

[HKEY_CLASSES_ROOT\dllfile\Shell\UnRegister\command]
@="regsvr32.exe /u \"%1\""

; ==========
; .OCX files
; ==========

[HKEY_CLASSES_ROOT\.ocx]
@="ocxfile"

[HKEY_CLASSES_ROOT\ocxfile]
@="OCX"

[HKEY_CLASSES_ROOT\ocxfile\Shell\Register\command]
@="regsvr32.exe \"%1\""

[HKEY_CLASSES_ROOT\ocxfile\Shell\UnRegister\command]
@="regsvr32.exe /u \"%1\""

 

A questo punto salvate il file con l'estensione .reg e fate doppio click su tale file, verrà modificato il registro di sistema, inserendo nel menu di scelta rapida due voci, una permette la registrazione della dll o activeX e l'altro la deregistrazione. Si consiglia di fare una copia del registro di sistema.

 

Posted: ott 08 2006, 04:16 by emanuelem | with no comments
Filed under:
Creazione delle classi documentali e custom property in Filenet
 

Da questo sito http://blogs.devleap.com/emanuelem/articles/14449.aspx potete leggere un articolo riguardante filenet, in particolare sulla creazione delle custom property e classi documentali.

Che dirvi... buona lettura.

Posted: ott 07 2006, 12:23 by emanuelem | with no comments
Filed under:
Editor per le pagine web:

Segnalazione Tools: Editor per le pagine Web.

Da questo sito http://freetextbox.com/ potete scaricare un simpatico tools o meglio componente da inserire nelle vostre pagine web (Asp.net) permette di avere un editor di testo, davvero molto carino. Compatibile con i browser IE e mozilla e firefox.

Posted: ott 04 2006, 10:39 by emanuelem | with no comments
Filed under: