lunedì 26 gennaio 2009

posizionare un ContextMenuStrip in una form

Private Sub Form3_MouseClick(ByVal sender As System.Object, ByVal e As
System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseClick

ContextMenuStrip1.Show(PointToScreen(e.Location))


End Sub

domenica 25 gennaio 2009

Esempio inserimento dati in MS-Access con parametro


Imports System.Data.OleDb

Dim cn As OleDbConnection
Dim cmd As OleDbCommand



Try
cn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\programmazione.mdb")
'stringa accesso dati
cn.Open()
cmd = New OleDbCommand("insert into tabella1 (a,b) values('prova',?) ", cn)
cmd.Parameters.Add("@b", OleDbType.Char).Value = TextBox4.Text
cmd.ExecuteNonQuery()


Catch
End Try

cn.Close()

Nota.
Si differenzia rispetto ad SQL (che vuole i nomi @nomi e non il ?)

Esempio inserimento dati in MS-SQL con parametro

Imports System.Data.Sql

Dim cn As SqlClient.SqlConnection
Dim cmd As SqlClient.SqlCommand
Try
cn = New SqlClient.SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename= " & Chr(34) & "C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\vb.mdf" & Chr(34) & ";Integrated Security=True;Connect Timeout=30;User Instance=True")
cn.Open()
cmd = New SqlClient.SqlCommand("insert into table1 (a,b) values('ii',@b) ", cn)
cmd.Parameters.Add("@b", SqlDbType.Char).Value = TextBox3.Text
cmd.ExecuteNonQuery()

Catch
End Try

cn.Close()
Me.Table1TableAdapter.Fill(Me.VbDataSet.Table1)

Note.
Si differenzia rispetto all'insert dei dati in access (che richiede il ?).

Esempio lettura dati da MS-SQL

Imports System.Data.Sql

Dim cn As SqlClient.SqlConnection
Dim cmd As SqlClient.SqlCommand
Dim dr As SqlClient.SqlDataReader
Try
cn = New SqlClient.SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename= " & Chr(34) & "C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\vb.mdf" & Chr(34) & ";Integrated Security=True;Connect Timeout=30;User Instance=True")
cn.Open()
cmd = New SqlClient.SqlCommand("select * from table1 ", cn)
dr = cmd.ExecuteReader()
While dr.Read()
TextBox1.Text = dr(0)
TextBox2.Text = dr(1)
TextBox3.Text = dr(2)
' lettura dati
End While
Catch
End Try

cn.Close()

Esempio inserimento dati in MS-SQL

Imports System.Data.Sql

Dim cn As SqlClient.SqlConnection
Dim cmd As SqlClient.SqlCommand
Try
cn = New SqlClient.SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename= " & Chr(34) & "C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\vb.mdf" & Chr(34) & ";Integrated Security=True;Connect Timeout=30;User Instance=True")
cn.Open()
cmd = New SqlClient.SqlCommand("insert into table1 (a,b) values('RRR','RRR') ", cn)
cmd.ExecuteNonQuery()

Catch
End Try

cn.Close()

Esempio inserimento dati in MS-Access

Imports System.Data.OleDb

Dim cn As OleDbConnection
Dim cmd As OleDbCommand



Try
cn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\programmazione.mdb")
'stringa accesso dati
cn.Open()
cmd = New OleDbCommand("insert into tabella1 (a,b) values('RRR','RRR') ", cn)
cmd.ExecuteNonQuery()

Catch
End Try

cn.Close()

Esempio lettura dati da MS-Access

Imports System.Data.OleDb

Dim cn As OleDbConnection
Dim cmd As OleDbCommand
Dim dr As OleDbDataReader


Try
cn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\programmazione.mdb")
'stringa accesso dati
cn.Open()
cmd = New OleDbCommand("select * from tabella1", cn)
dr = cmd.ExecuteReader
While dr.Read()
TextBox1.Text = dr(0)
TextBox2.Text = dr(1)
TextBox3.Text = dr(2)
' lettura dati
End While
Catch
End Try
dr.Close()
cn.Close()

martedì 13 gennaio 2009

il browsing delle directory su IIS 7

Mi rendo conto che si tratta di un appunto banale, ma ogni volta divento matto a ritrovarlo.
Per abilitare il browsing delle directory su IIS 7 occorre attivare la funzionalità installando l'apposito il componente di Windows.

sabato 10 gennaio 2009

robocopy il successore di xcopy

E' già tempo in circolazione, ma io ero affezionato a xcopy e per le mie copy di backup continuavo ad utilizzare i miei vecchi comandi batch.
Ora su Vista xcopy è espressamente definito obsoleto quindi mi sono aggiornato.
Questo è il comando per copiare nella cartella di destinazione solo i file modificati più di recente.

  • robocopy c:\origine c:\destinazione /e /xo

robocopy, fa molte cose in più di xcopy, ad esempio gestisce anche i percorsi di rete UNC, quindi è possibile copiare tramite pc differenti (xcopy mi pare che copiasse solo fino a 2 GB).

tools per App Engine

Giorni fa è stata rilasciata la versione 1.1 di App Engine Site Creator un tools per creare pagine web sulle App di Google.

Di fatto è una applicazione in Python che per funzionare deve essere caricata su appspot.com oppure sul runtime in locale.

Lo strumento ha al momento solo funzionalità essenziali, ma può essere personalizzato.

Le pagine e la loro struttura sono salvate nelle tabelle del Datastore.
Questo comporta un limite per chi lavora in locale: una volta create sul datastore locale le pagine non possono essere esportate, ma vanno ricreate ex-novo, anche sul datastore di Appspot.com.

mercoledì 7 gennaio 2009

Creare grafici con Python e le Google Chart

In questa pagina http://pygooglechart.slowchop.com ci sono alcune interessanti info su come creare grafici con Python utilizzando le Google Chart.

Sono scaricabili alcuni utili esempi.
Il codice crea in locale le immagini dei grafici in formato .png