Francesco Geri

Il blog di Francesco Geri
posts - 94, comments - 165, trackbacks - 2

giovedì 4 dicembre 2008

Eseguire lo Shrink del database di contenuto di WSS

Come fare ad eseguire lo shrink del database di contenuto di WSS, quando WSS utilizza l'istanza di Sql Server propria (quella che crea il setup di WSS)?

Il problema è che da SQL Server Management Studio non ci si può connettere all'istanza di SQL Server de iWSS (almeno questo mi risulta).

Allora si può ricorrere alla linea di comando.

  • Aprire il prompt dei comandi
  • Posizionarsi sulla cartella (SQL Server 2008):

    <drive>:\Program Files\Microsoft SQL Server\90\Tools\Binn
  • eseguire il comando:

    sqlcmd -S MY_SERVER\MICROSOFT##SSEE -q "dbcc shrinkdatabase(MY_WSS_CONTENT_DB)"

 

Dove:

MY_SERVER\MICROSOFT##SSEE è l'istanza di SQL Server

MY_WSS_CONTENT_DB è il database di WSS

 

Naturalmente ringrazio il collega Osvaldo che mi ha supportato nel determinare il comando sql da eseguire!

posted @ lunedì 1 gennaio 0001 00:00 | Feedback (1) | Filed Under [ MOSS07 SQL Server ]

Come verificare se un punto è visibile nello schermo

Il post mostra un semplice tip per vedere se un punto è visibile nello schermo (anche in presenza di più schermi).

La grafica dell'esempio è "mozzafiato":

image

 

Il codice è invece il seguente:

   1: Public Class Form1
   2:  
   3:     Private Sub Button1_Click(ByVal sender As System.Object, _
   4:                 ByVal e As System.EventArgs) Handles Button1.Click
   5:         Me.TxtEsito.Text = "..."
   6:         Dim p As Point
   7:         Try
   8:             Me.Cursor = Cursors.WaitCursor
   9:             Threading.Thread.Sleep(120)
  10:             p = New Point(Me.TxtX.Text, Me.TxtY.Text)
  11:             Dim s As Screen = Screen.FromPoint(p)
  12:             If s Is Nothing Then
  13:                 Me.TxtEsito.Text = "non nello schermo"
  14:             Else
  15:                 Me.TxtEsito.Text = "Schermo '" & s.DeviceName & "'"
  16:                 ' Verifica se il punto è contenuto
  17:                 If s.WorkingArea.Contains(p) Then
  18:                     Me.TxtEsito.Text &= ": il punto è contenuto!"
  19:                 Else
  20:                     Me.TxtEsito.Text &= ": il punto NON è contenuto!"
  21:                 End If
  22:             End If
  23:         Catch ex As Exception
  24:             Me.TxtEsito.Text = ex.Message
  25:         Finally
  26:             Me.Cursor = Cursors.Default
  27:         End Try
  28:     End Sub
  29:  
  30:  
  31: End Class

 

In pratica è sufficiente determinare lo schermo che "dovrebbe" mostrare il punto che ci interessa:

Dim s As Screen = Screen.FromPoint(p)

Ho scritto "dovrebbe" in quanto, se nessuno schermo contiene quel punto allora il metodo restituisce lo schermo più "vicino" al punto.

A questo punto, per essere sicuri che il punto sia contenuto nell'area visibile dello schermo, basta eseguire la seguente chiamata:

If s.WorkingArea.Contains(p) Then

posted @ lunedì 1 gennaio 0001 00:00 | Feedback (0) | Filed Under [ Tips .Net ]

Powered by:
Powered By Subtext Powered By ASP.NET