Wednesday, February 14, 2007

CONFIGURACION DEL SMTP SERVER LOCAL

CONFIGURACION DEL SMTP SERVER LOCAL


Abrir el iis :





Click der sobre el servidor virtual smtp x defaul, y elegir propiedades





Se tendra la séte pantalla, y click en avanzada, y dejar como esta:





Click en la ficha acceso


Click en el btn conexión , poner nuestra ip, y la x def 127.0.0.1





Lo mismo en el btn retransmisión









Click en el tab entrega





Click en conexiónes salientes





Click en avanzada y colocar el dominio





Probando la disponibilidad del puerto smtp 25 x defaul





  1. desac el antivirus o firewall q s este ejecutando









  1. probar q exista accesibilidad al puerto 25









Los mail que se envien se me quedan en la carpeta:





Alguien podria ayudarme como hacer para enviar un correo desde mi propia maquina, me gustaria enviar un mail x ejem a mi cuenta de correo en gmail, es con fienes de aviso cuando un proceso no finalize correctamente.


Gracias.

Monday, February 12, 2007

Debe tener la sgte estructura



Se obtendra los sgtes resultados.


  1. al cargar, muestra categorías



  1. al presionar el boton padre hijo, se vera el detalle de cada categoría.



help, como hago para subir la solucion, alguno podria ayudarme con un host para archivos.

cualquier cosa me escribe, a ealvinoq@gmail.com

thkns



Web Services

Web Services
(Fundamentos)



  1. Introducción:


Se mostrara cuan fácil es crear un Servicio Web.

Lo fácil que es reusar una aplicación .Net, y mover la lógica de negocio a un Web Service, estando así disponible para otras aplicaciones.

Tendremos dos ejemplos, el primero, que se encarga de recolectar la información de pago, y el segundo, que se encarga de enviar y recibir archivos, siendo representados los archivos binarios dentro de un tipo complejo.

Se resolverán algunos casos, los cuales se harán paso a paso, ya que aprenderemos haciendo.


  1. Ejemplos:



    1. Sencilla aplicación comercial



  1. Crear una interfaz de la siguiente manera.





  1. Crear un servicio web con la sgte estructura:





  1. Escribir el siguiente método en al Archivo code-behind TarjetaCredito.cs:


[WebMethod(Description = "Este método se encarga de validar el nro de tarjeta de crédito")]
public bool validarTarjeta(String nroTarjeta, DateTime fchaVcto)
{

if (fchaVcto >= DateTime.Today)
{
int total = 0;
int temp = 0;
char[] ccDigitos = nroTarjeta.ToCharArray();

for (int i = 0; i < nroTarjeta.Length; i++)
{
if (((i + 1) % 2) == 0)
{
total += int.Parse(ccDigitos[i].ToString());
}
else
{
temp = int.Parse(ccDigitos[i].ToString()) * 2;
if (temp > 9)
{
temp = (int)temp - 9;
}
total += temp;
}

}

if ((total % 10) == 0)
{
return true;
}
else
{
return false;
}
}
else
{
return false;
}

}


  1. El atributo Description de la directa [WebMethod], permitira lo siguiente:





  1. Agregar la referencia Web.





  1. Agregar la declaración:





  1. Programar el evento click del boton Colocar orden.


protected void btncolord_Click(object sender, EventArgs e)
{
TarjetaCredito o_tc = new TarjetaCredito();

if (o_tc.validarTarjeta(txtnrotarjeta.Text, cldfecha.SelectedDate))
{
lblstatus.Text = "Gracias por su orden.";
}
else
{
lblstatus.Text = "Tarjeta de crédito invalida";
}

}



    1. Aplicación para el intercambio de archivos.



  1. Crear el siguiente esquema para el servicio Web.





  1. En el archivo Code-Behind DirectorioWeb agregar los siguientes namespaces y los WebMethods.





Crear el siguiente estructura, va por encima de la declaración de la propiedad de WebService.



[WebMethod]
public string[] ListarArchivos()
{
return Directory.GetFiles("d:\Publica");
}

[WebMethod (Description = "Permite al cliente solicitar un archivo.")]
public ArchivoWeb ObtenerArchivo(string nombreArchivo)
{
ArchivoWeb archivoWeb = new ArchivoWeb();
string rutaArchivo = "d:\Publica\" + nombreArchivo;

//establecer el nombre del archivo
archivoWeb.Nombre = nombreArchivo;

//obtener el contenido del archivo solicitado


Stream s = File.Open(rutaArchivo, FileMode.Open,FileAccess.Read);
archivoWeb.contenido = new byte[s.Length];
s.Read(archivoWeb.contenido, 0, (int)s.Length);
s.Close();

//obtener los sellos de fechas para el archivo
archivoWeb.FchaCreacion = File.GetCreationTime(rutaArchivo);
archivoWeb.FchaUltAcceso = File.GetLastAccessTime(rutaArchivo);
archivoWeb.FchaUltEscritura = File.GetLastWriteTime(rutaArchivo);

return archivoWeb;
}


  1. Agregar un nuevo proyecto, “Console Application”, y que tenga la siguiente estructura:





  1. Agregar la siguiente Referencia Web al servicio Web definido anteriormente:




  1. Implementar los siguiente metodos:

static int Main(string[] args)
{
//validar el numero de los argumentos de comando de linea
if (args.Length < 1 || args.Length > 3)
{
MostrarUso();
return 1;
}

//inicializar variables
string origen = args[1];
string destino = origen;

if (args.Length == 3)
{
destino = args[2];
}

//Procesar los comandos que fueron pasados
switch (args[0].ToUpper())
{
case "DIR":
ListarArchivos();
break;
case "GET":
obtenerArchivo(origen, destino);
break;
default:
MostrarUso();
break;

}

return 0;

}


private static void ListarArchivos() {
DirectorioWeb dirWeb = new DirectorioWeb();
string[] archivos;

archivos = dirWeb.ListarArchivos();

foreach (string archivo in archivos)
{
Console.WriteLine(archivo);
}

Console.WriteLine("n{0} archivo(s) en el directorio.", archivos.Length);

}

private static void obtenerArchivo(string origen,string destino) {
DirectorioWeb dirWeb = new DirectorioWeb();
ArchivoWeb archWeb = new ArchivoWeb();

//traer el archivo solicitado y guardarlo en el disco
archWeb = dirWeb.ObtenerArchivo(origen);

//guardo el archivo web requerido y lo copio a mi sistema
//de archivos
FileStream fs = File.OpenWrite(destino);
fs.Write(archWeb.contenido, 0, archWeb.contenido.Length);
fs.Close();

//establecer el sello de fecha y tiempo para el archivo
File.SetCreationTime(destino, archWeb.FchaCreacion);
File.SetLastAccessTime(destino, archWeb.FchaUltAcceso);
File.SetLastWriteTime(destino, archWeb.FchaUltEscritura);

}


private static void MostrarUso()
{
Console.WriteLine("Se usa el ArchivoWeb para traer archivos"+
"desde el servicio web directorioWeb.");
Console.WriteLine("nUso: Origen de comando archivoWeb [destination]");
Console.WriteLine("tComando - DIR o GET");
Console.WriteLine("tOrigen - El nombre del archivo a "+
"traer");
Console.WriteLine("tDestino - Opcionalmente el nombre de el"+
" archivo de destino.");
Console.WriteLine("nEjemplos");
Console.WriteLine("tArchivoWeb obtiene algun archivo.exe");
Console.WriteLine("tArchivoWeb obtiene algun archivo.exe c:temp");
Console.WriteLine("tArchivoWeb obtiene algun archivo.exe c:\temp\myfile.exe");

}



  1. Utilizándolo:



    1. Ir a la siguiente ruta:





    1. Abrir una consola, y ejecutar el .exe que se encuentra en la carpeta debug.





    1. En la siguiente consola, escribir la ruta y pasarle los parámetros requeridos.


Antes del copiado(copiaremos hola.txt).



Escribir el siguiente comando:



El archivo fue copiado satisfactoriamente:

























Bibliografía

Libro Building XML Web Services for the Microsoft .Net Platform.
Capitulo 2 – Creating a Basic Web Service.

Friday, February 09, 2007

Visual Source Safe 6.0

Conectarse a un Base de Datos


  1. Abrir VSS 6.0



  1. Abrir la BD.









  1. Elegir la base de datos, y abrir.



  1. Establecer un directorio en tu maquina, donde se creara una copia del proyecto, y estara bajo el control de VSS 5.0.



  1. En este caso le damos la ruta del directorio en mi carpeta.



  1. Dar clic en GetLastVersion, y habilitar los checks respectivos.



7. Dar click en ok.



Tuesday, January 09, 2007

Librería necesaria para desarrollar con objetos de ADOMD




Estoy revisando el siguiente link:


http://blogs.conchango.com/christianwade/archive/2006/04/30/MDX-Sprocs-and-Scripting_3A00_-An-Interesting-Example.aspx

Thursday, January 04, 2007

Host ASp. NET 2.0

Host Con ASp.NEt Gratuito, pero con trampa

En esta direccion podran obtener host para colgar sus aplicaciones asp.net 2.0,

tan solo tienen que crear una cuenta.

http://www.vwdhosting.net/

Lo malo: Dura 30 días.

Monday, December 18, 2006

Habilitacion del componente del servicio de integration services


Paso 1


Elegir servicios de componentes.



Paso 2



Paso 3



Paso 4


En seguridad dar los permisos y accesos requeridos


Sunday, December 10, 2006

Posibilidad = Probabilidad ?, soporte para cambio de año?

Posibilidad = Probabilidad ?

Posibilidades para que haiga buen tiempo, según la NASA (Administración Estadounidense de Aeronáutica y del espacio), el motivo, el lanzamiento del discovery.


· 30 por ciento la posibilidad de que el lanzamiento del «Discovery» tuviera lugar el viernes.
· 40 por ciento el domingo y el lunes.
· El martes, con un 60 por ciento de posibilidades.

Interesante

Estos señores están preocupados por el lanzamiento, aparte de la perdida diaria de 500 000 dólares, a que el lanzamiento se de antes del 17 de diciembre, para así tener a la tripulación antes del primero de enero, y no para que celebren navidad con sus familiar, si no por un "problema" de software, ya que el sistema informático con que cuenta la nave no tiene soporte para el cambio de año.


Como estudiante de ingeniera de sistemas, me llama la atención este tema.

Que hay en el cambio de año, que pueda amenazar la estabilidad de un software, depende del tipo de software?, a todos les sucederá?, pucha, no se.

Referencia: Click aqui...

Tipos de correos Electrónicos

Tipos de correos Electrónicos

Clasificación, según la finalidad:

1. Daños intrínsecos:

Son aquellos correos electrónicos cuyo propósito último es acabar con la información que poseemos, también podemos considerar dentro de esta clasificación a los bien conocidos correos de “pérdida de tiempo”, “correos basuras” o “spam” .


2. Daños extrínsecos.

Captar la atención potentes victimas que caigan en la estafa (bancaria, pishing, robo de correo electrónico) ya sea directamente o a través de intermediarios, que ponen en contacto al estafador y al presunto estafado. La finalidad de esto es conseguir importantes sumas de dinero.

Referencia: Click aqui.

Saturday, December 09, 2006

Particiones SSAS


Particiones SSAS

Una particion es una clase hija de la clase padre MeasureGroup(MG).
Una particion contiene una porcion de data de un MG, la data que va a contener cada particion es definida por dos tags (XMLA), y (este tipo no lo encuentro pero eso dicen en el link que encontre, mas abajo la ref., query mdx que referencia a una tupla o a un set),

Informacion basica para una particion:

- Nombre de la particion.
- Storage mode.
- Processing mode.

Con el slicing definition podemos usar una dimension, hierarchy, level and member names, keys, unique names, etc.(no se pueden usar funciones =( )

Con AMO (algo similar a la creacion de tables y datasets)

Existe una clase padre MG, y esta tiene una collecion de Particiones, entonces creas una una instancia de la clase particion y la agregas a esta coleccion, despues actualizas la particion usando el metodo Update. La puedes remover usando el metodo Drop.



Referencia Click aqui...

Monday, November 13, 2006

NET PROTECTOR ACADEMY

Buenas noches a todos, bueno he aqui una pagina, en donde nos dan la oportunidad de conocer temas de seguridad, algo que quiza no tengamos en cuenta cuando programamos, o diseñamos algun aplicativo, el que pasaria si ocurriese aquello, que hariamos en que..., cosas que tenemos que pensar, tenemos que estar un paso adelantes de todos, mismos pitonisos, adelantarnos a los hechos, existe una pagina muy interesante, difundida por microsoft, es conocimiento, y si lo ofrece gratis esta bien, no se como otras empresas que supuestamente no desarrollan algo similar, o quiza si lo hagan y no este enterado, podrian ayudarme en tal caso, bueno la pagina se llama NET PROTECTOR ACADEMY , la cual esta interesantemente dividido en 5 niveles, cada representado por un escudo, aunque yo los he estado viendo como diamantes, bueno, entre esos niveles, hace un par de dias acabo de lograr el de aprendiz, ahora a seguir el camino, que queda mucho que recorrer, que la fuerza me acompañe.

Gracias por la atencion prestada, un atento servidor EsJe.

DCE 2005

Obtuve las 3 estrellas, fue chévere, también puse persistencia. A esperar la llegada de la lluvia de estrellas, la cuarta y la quinta, según los del DCE, no pasa de este año, ya les queda poquito tiempo, a ver pues, no sean fallas.
Para porder inscribirse simplemente hacer click aqui, lo unico que se tendra que hacer sera registrarse, para lo cual se necesita una cuenta en passport, por ejemplo la de hotmail.com.
Atte
EsJe

Usando Google Docs

Navegando por la web, encontre un blog, en el cual decia que existe un Word online, llamado writely, e intente ingresar a la pagina principal de este. Lo que encontre fue un mensaje, algo asi como, lo sentimos la, "la página que usted esta tratando de acceder ya no se encuentra disponible", y aparte el mensajito, algo sobre google, pues Google se lo compro, ahora lo tengo como un link en mi correo Gmail.

Ademas de resalta las bondades de este servicio, es que puedo publicar en alguna cuenta de Blog, en este caso utilizando mi cuenta en Blogger.