Buscar en Google

Busca en Todo Vb-Net

Búsqueda personalizada

miércoles, 2 de junio de 2010

Embedir Imagen en e-mail [VB.Net]

Embedir Imagen en e-mail [VB.Net]

Buenoooooo, en esta ocacion mostrare como embedir un archivo de imagen en un correo electronico, no es simplemente atachar en el correo, si no que desplegar dicha imagen en el cuerpo del correo, como que se tratase de una edicion de OutLook.

Comencemos....

' Espacio de nombres a importar
Imports System.Net.Mail

Private Sub EnviandoMailAt()

'Funcion de envio de correo

Dim SMTP As New System.Net.Mail.SmtpClient 'Variable con la que se envia el correo
Dim CORREO As New System.Net.Mail.MailMessage
CORREO.From = New System.Net.Mail.MailAddress(Desdemail, "Correo Electronico", System.Text.Encoding.UTF8)


Dim htmlView As AlternateView = AlternateView.CreateAlternateViewFromString("Cuerpo del correo", Nothing, "text/html")
'Path de la imagen
Dim logo As New LinkedResource("IMG\LOGOLSAL.png")
logo.ContentId = "companylogo"
'Adicionando logo
htmlView.LinkedResources.Add(logo)

CORREO.To.Add("cliente@mail.com")
'Adicionando copia oculta
CORREO.Bcc.Add("cliente@mail.com")

CORREO.IsBodyHtml = True
CORREO.AlternateViews.Add(htmlView)

CORREO.Subject = "Confirmación de recarga - AutoMailer -"
SMTP.Host = "ServidorSMTP"
SMTP.Port = "Puerto"


Try
SMTP.Credentials = New System.Net.NetworkCredential("UsuarioSMTP", "PassSMTP")
SMTP.Send(CORREO)

Catch ex As System.Net.Mail.SmtpException
MessageBox.Show("Fallo el envio: " & ex.Message)
End Try

Obtener Fecha y Hora de un servidor MSSQL 2005

Obtener Fecha y Hora de un servidor MSSQL 2005
Muchas veces nos vemos en la obligacion de obtener la fecha de nuestro servidor, esto para efectos de auditoria de las transacciones realizadas por los usuarios.

Para eso aca pongo un ejemplo de como obtener dicho dato, ojala le sirva a alguien...


' Espacio de nombres a importar

Imports System.Data.SqlClient

' Funcion para realizar consulta


Public Function SetFechaHoraServer()
SetFechaHoraServer = ""
Try

Dim CmdSsql As New SqlCommand("SELECT YEAR(NOW()) AS AÑO, MONTH(NOW()) AS MES, DAY(NOW()) AS DIA, " & _
"HOUR(NOW('h')) AS HORA, MINUTE(NOW()) AS MINUTO, SECOND(NOW()) AS SEGUNDO", MyConex)
Dim Rd As SqlDataReader
MyConex.Open()
Rd = CmdSsql.ExecuteReader
Rd.Read()

If Rd.HasRows = False Then
MsgBox("No hay datos para formar hora actual del servidor")
MyConex.Close()
Exit Function
End If

FechaHoraServer = Rd(0) & "-" & Rd(1) & "-" & Rd(2) & " " & Rd(3) & ":" & Rd(4) & ":" & Rd(5)

MyConex.Close()

Catch oexcep As SqlException
MessageBox.Show("Error al conectar con BD o actualizar, Proceso: Consultando fecha del servidor" & _
ControlChars.CrLf & _
oexcep.Message & ControlChars.CrLf)
MyConex.Close()
End Try


End Function

Finalmente obtenemos la fecha en el formato deseado, segun el ejemplo el formato que obtendremos seria: "2010-06-02 04:10:35"


Dudas o comentarios a: cesarlopez1909@gmial.com


Aplicar MD5 a String [VB.Net]


El Proceso consta de obtener una cadena encriptada, partiendo de una cadena normal, este tipo de funciones son utiles normalmente para encriptar password´s en nuestros sistemas, pues con esto agregamos un poco mas de seguridad a los mismos.

espero a alguien le sirva....


' Hacer la llamada a la funcion y enviar el parametro solicitado

Call MD5EncryptPass(TxtPassword.Text)


' Espacio de nombres a importar

Imports System.Security.Cryptography

'Funcion de encriptado

Private Sub MD5EncryptPass(ByVal StrPass As String)
PasConMd5 = ""
Dim md5 As New MD5CryptoServiceProvider
Dim bytValue() As Byte
Dim bytHash() As Byte
Dim i As Integer

bytValue = System.Text.Encoding.UTF8.GetBytes(StrPass)

bytHash = md5.ComputeHash(bytValue)
md5.Clear()

For i = 0 To bytHash.Length - 1
PasConMd5 &= bytHash(i).ToString("x").PadLeft(2, "0")
Next

MsgBox(PasConMd5)

End Sub


'El resultado




Dudas o consultas a: cesarlopez1909@gmail.com

ComboBox Dependientes [VB.Net]


Añadir un dataset a un ComboBox [VB.Net]

Para el ejemplo se usaran datos extraidos desde una BD MySQL
La tematica del ejemplo es simple, siempre con la misma filosofia añadir dataset a un combo luego realizar indexacion para realizar una neva busqueda y alimentar un nuevo dataset el cual sera asignado a su vez a otro combo.


espacios de nombres a importar

Imports MySql.Data.MySqlClient

Declaraciones

Public AdapterCats As MySqlDataAdapter
Public AdapterSubCats As MySqlDataAdapter
Public CDatasetCats As DataSet
Public CDatasetSubCats As DataSet

' Primero en el evento load del formulario hacemos el llenado del Combo categorias

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Try

AdapterCats = New MySqlDataAdapter("SELECT CATEGORIA, NOMBRE FROM.CATEGORIA", MyConex)

CDatasetCats = New DataSet()
MyConex.Open()
AdapterCats.Fill(CDatasetCats, "CATS")
MyConex.Close()

CmbCategoria.DataSource = CDatasetCats.Tables("CATS")
CmbCategoria.DisplayMember = CDatasetCats.Tables("CATS").Columns("NOMBRE").ToString
CmbCategoria.ValueMember = CDatasetCats.Tables("CATS").Columns("CATEGORIA").ToString


Catch oexcep As MySqlException
MessageBox.Show("Error al conectar con BD o actualizar, Proceso: Consultando datos " & _
ControlChars.CrLf & _
oexcep.Message & ControlChars.CrLf)
MyConex.Close()
End Try

End Sub



Luego en el evento de cambio de indice del combo hacemos el llenado del la subcategorias, recordemos que una categoria puede tener 'n' subcategorias


Private Sub CmbCategoria_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmbCategoria.SelectedIndexChanged
Dim CatBuscar As String
CatBuscar = CDatasetCats.Tables("CATS").Rows(CmbCategoria.SelectedIndex)("CATEGORIA")
Try

AdapterSubCats = New MySqlDataAdapter("SELECT SUBCAT, NOMBRE FROM " & BaseDatos & ".SUBCATEGORIA WHERE CATEGORIA = '" & CatBuscar & "'", MyConex)

CDatasetSubCats = New DataSet()
MyConex.Open()
AdapterSubCats.Fill(CDatasetSubCats, "SUBCATS")
MyConex.Close()


CmbSubcategoria.DataSource = CDatasetSubCats.Tables("SUBCATS")
CmbSubcategoria.DisplayMember = CDatasetSubCats.Tables("SUBCATS").Columns("NOMBRE").ToString
CmbSubcategoria.ValueMember = CDatasetSubCats.Tables("SUBCATS").Columns("SUBCAT").ToString

Catch oexcep As MySqlException
MessageBox.Show("Error al conectar con BD o actualizar, Proceso: Consultando datos " & _
ControlChars.CrLf & _
oexcep.Message & ControlChars.CrLf)
MyConex.Close()
End Try
End Sub




Esto ha sido todooooooo... dudas o comentarios a cesarlopez1909@gmail.com