none
Pegar una imagen en el cuerpo de un correo RRS feed

  • Pregunta

  • Hola de nuevo.

    Tengo un codigo que saque de aqui para enviar un correo desde VB.net

    Y me funciona con esto

     'Path de la imagen
                        Dim logo As New LinkedResource(AppPath() & "\Iconos\Mi_Imagen.jpg")
                        logo.ContentId = "companylogo"
                        'Adicionando logo
                        htmlView.LinkedResources.Add(logo)

    Pero deseo que sea una imagen ya cargada en un resource (incrustada)

    Pruebo con esto 

    Global.Mi_Aplicacion.My.Resources.Resource1.Mi_imagen

    Pero me da error

    como seria para ponerlo aqui

    Dim logo As New LinkedResource(AppPath() & "\Iconos\Mi_Imagen.jpg")


    Saludos a toda la comunidad.



    • Editado FerScrich martes, 7 de mayo de 2019 14:21
    martes, 7 de mayo de 2019 14:20

Todas las respuestas

  • Hola FerScrich,

    Vas a notar en los constructores de LinkedResource() que tu estas intentando pasar la imagen a través de un Stream  como stream lee dato a dato, necesitas tener un buffer lo suficiente como tu imagen para ser leído por los métodos de Stream y FileStream considera que para evitar corrupción el archivo \Global.Mi_Aplicacion.My.Resources.Resource1.Mi_imagen/ sólo debe contener la imagen que vas a leer y nada más 

    Global.Mi_Aplicacion.My.Resources.Resource1.Mi_imagen -> debe ser el Stream que apunta a leer el file donde está la imagen, las ventajas de Stream es que puedes leer varias imágenes en un directorio con esfuerzo menor.

    No dudes en ampliar más sobre este tema si es que aún lo requirieras o de abrir una nueva consulta en caso de tener alguna situación o necesitarla con algún otro de los productos de Microsoft.

     

    Adicional le invito a consultar los siguientes recursos:

    Guía para formular preguntas en el foro

    Channel 9 - donde puedes encontrar una sección de: _.NET Framework

    Gracias por usar los foros de MSDN.

    Erick Rivera

     ____

     

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.

     

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.  

     

    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.


    • Editado eRiver1 martes, 7 de mayo de 2019 16:55 gramatica
    • Propuesto como respuesta Carlos_Ruiz_M martes, 21 de mayo de 2019 16:38
    martes, 7 de mayo de 2019 16:55
  • No se mucho del tema pero como seria el codigo.?


    Saludos a toda la comunidad.

    martes, 7 de mayo de 2019 17:08
  • string StartDirectory = AppPath() & "\Iconos\Mi_Imagen.jpg";
    string EndDirectory =
    AppPath() & "\Iconos\Mi_Imagen.jpg";
    foreach (string filename in Directory.EnumerateFiles(StartDirectory))
    {

    using (FileStream SourceStream = File.Open(filename, FileMode.Open)){

    using (FileStream DestinationStream = File.Create(EndDirectory + filename.Substring(filename.LastIndexOf('\\')))){
    await SourceStream.CopyToAsync(DestinationStream);

    Stream s = new MemoryStream();
            for (int i = 0; i < 122; i++)
            {
                s.WriteByte((byte)i);
            }
            s.Position = 0;

            // Now read s into a byte buffer with a little padding.
            byte[] bytes = new byte[s.Length + 10];
            int numBytesToRead = (int)s.Length;
            int numBytesRead = 0;
            do
            {
                // Read may return anything from 0 to 10.
                int n = s.Read(bytes, numBytesRead, 10);
                numBytesRead += n;
                numBytesToRead -= n;
            } while (numBytesToRead > 0);
            s.Close();

    Dim logo As New LinkedResource( s );


    • Propuesto como respuesta Carlos_Ruiz_M martes, 21 de mayo de 2019 16:38
    viernes, 17 de mayo de 2019 16:52