Visual Basic.NET - Nombre del archivo y el peso

 
Vista:
Imágen de perfil de melqui
Val: 643
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Nombre del archivo y el peso

Publicado por melqui (242 intervenciones) el 16/09/2020 01:35:08
hola amigos

estoy con dificultad al encontrarme con este problema
estoy intentando hacer un adjunto de un documento sea cualquier formato, problema es que el archivo no esta viniendo con el nombre del formato solamente viene con el nombre del formato bajado del navegador. necesito que veja asi como está en la primera imagen

Screenshot_1

mas está viniendo de esta forma, no consigo saber cual es el archivo que debe de ser enviado, tal com está en la imagen

Screenshot_2


estoy trabjando el Clipboard en mi codigo para cargar dentro del richtextbox

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Private Sub CARREGAR_ARQUIVO()
    Try
 
        Dim Abri_Arquivo As New OpenFileDialog()
 
        Abri_Arquivo.CheckPathExists = True
        Abri_Arquivo.CheckFileExists = True
        Abri_Arquivo.Filter = "Documentos (*.doc; *.docx)|*.doc; *.docx|" &
                                                              "PDF (*.PDF)|*.PDF|" &
                                                               "Bloco de texto (*.txt)|*.txt"
 
        Abri_Arquivo.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Personal)
        Abri_Arquivo.RestoreDirectory = True
        Abri_Arquivo.ShowHelp = False
        Abri_Arquivo.Multiselect = False
        If Abri_Arquivo.ShowDialog = System.Windows.Forms.DialogResult.OK Then
 
 
            Dim Paths As New System.Collections.Specialized.StringCollection
            '  StrCaminho_arquivo = Abri_Arquivo.FileName
            Paths.AddRange(Abri_Arquivo.FileNames)
            Clipboard.SetFileDropList(Paths)
            txtAnexo.Paste()
            Clipboard.Clear()
        End If
    Catch ex As Exception
        MsgBox(ex.Message)
    End Try

será que es posible de como tratar solamente el nombre del archivo ?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Phil Rob
Val: 3.353
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Nombre del archivo y el peso

Publicado por Phil Rob (1546 intervenciones) el 16/09/2020 07:33:22
Hola Melqui,

No comprendo bien tu pregunta.

Comprendo que tu programa de mail no muestra bien el nombre del "attachement". Si este es tu problema, viene del código que envias.

Este codigo parece me dificil, no comprendo porque utilizas el Clipboard:
1
2
3
4
5
6
Dim Paths As New System.Collections.Specialized.StringCollection
'  StrCaminho_arquivo = Abri_Arquivo.FileName
Paths.AddRange(Abri_Arquivo.FileNames)
Clipboard.SetFileDropList(Paths)
txtAnexo.Paste()
Clipboard.Clear()

El OpenFileDialog puede dar una lista de paths con Abri_Arquivo.FileNames.

Esta lista puede ser utilizada directo o copiada en una tabla o una ArrayList de String.
Para agregar los archivos a un mail, el código siguiente conviene :
1
2
3
4
For Each S As String In ListaDeLosFicheros
    Dim Attache As New Attachment(S)
    Mail.Attachments.Add(Attache)
Next

...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de melqui
Val: 643
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Nombre del archivo y el peso

Publicado por melqui (242 intervenciones) el 16/09/2020 08:34:23
hola phil

lo que me estas pasando es para el metodo
1
System.Net.Mail
que se usa para enviar email, en mi caso es cargar el archivo en el richtextbox , aun no para el envio apenas preparando la fomatacion del correo. en el richtextbox, el clipeboard la uso de acuerdo la documentacion de la microsoft
https://docs.microsoft.com/es-es/dotnet/desktop/winforms/advanced/how-to-retrieve-data-from-the-clipboard?view=netframeworkdesktop-4.8

mas como comento que ese metodo esta funcionando, unico problema que tengo es que no esta cargando con el nombre del archivo mas si apenas con el nombre que esta siendo descargado del navegador.

Screenshot_3

yo creo phil puedo usar
1
Path.GetFileName
mas no estoy conseguiendo cargar en el richtextbox, creo que si ha alguna forma de combinar conseguiria tener conforme las imagenes anteriores.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Phil Rob
Val: 3.353
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Nombre del archivo y el peso

Publicado por Phil Rob (1546 intervenciones) el 16/09/2020 10:02:50
" ... en mi caso es cargar el archivo en el richtextbox ... " Quieres poner el texto del archivo en el RichTextBox ?
Quizá que el RichTextBox no accepte todo los textos ... Quizá deberías testar con fichero TXT o DOC.
Pero pienso que el ClipBoard no es hecho para esta. Que se pasa cuando pruebas con <CTRL><C> y <CTRL><V> ?
Si no funciona con el teclado, este no funciona con el código.
Para los documentos adjuntados, veo su la imagen que utilizas una LISTA para memorizar los Paths y nombres de los ficheros : este el buen método.
Clip

De otra maniera, no tengo repuesta a tu pregunta ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de melqui
Val: 643
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Nombre del archivo y el peso

Publicado por melqui (242 intervenciones) el 17/09/2020 14:17:55
phil

interesante cuando coloco en extension .rar o .txt el acepta normalmente como quiero, mas cuando en word, excel o pf el no me trae el con el nombre de archivo.

Screenshot_1

mas voy a tener que cambiarla

una pregunta hay alguna forma de usar este metodo

SendToNET2

usando hiperlink si tienes alguna idea de como hacerla me ayudaria,
tente usar el linklabel mas no tuve suceso.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Phil Rob
Val: 3.353
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Nombre del archivo y el peso

Publicado por Phil Rob (1546 intervenciones) el 17/09/2020 14:56:29
Hola,

Cuando pones un Attachement, en OutLook o con mi codigo, este es un Link que es mémorizado por el sistema. El documento es cargado al momento del envio (Mail.Send). A este nivel, todos ficheros estan posibles (rar, pdf, exe, txt, xls, ...). No acción necesaria para hacer un Link a este lugar.

No comprendo porque tienes problemas con XLS y PDF.

...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de melqui
Val: 643
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Nombre del archivo y el peso

Publicado por melqui (242 intervenciones) el 20/09/2020 20:55:00
hola phil , espero que estes bien


este mes estoy cambiando el metodo de las aplicaciones tradicionales aquella forma padron, estoy tentando hacer una modelage dentro de mi ambiente por ser una modelage tradicional de windows form muchas vezes carece de algunos recurso que pueden ser trabajadas. por eso que es dificil entender muchas vezes el tratamiento de las rutinas de este recursos

mas hice algunas alteraciones en mi fromulario y consegui adaptar lo que esta necesitando, a unica cosa es que tuve que modificar los recurso que estaba usando, percebi que richtextbox es muy volumoso en su codigo para tratar. principalmente cuando se va a usar para mandar correo formatado, en ese caso use el webbroswer asi consegui adapdarla a mi proyecto.

https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.webbrowser.document?view=netcore-3.1

mas no consegui usar los anexo como queria, pues al parecer tendria que criar un componente para adaptarla em vez de eso use normal el textbox para adjunto, solo necesite adaptar un hiperlink dentro de el asi consegui adaptarla al pasar el mause quede como link
Screenshot_1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Phil Rob
Val: 3.353
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Nombre del archivo y el peso

Publicado por Phil Rob (1546 intervenciones) el 20/09/2020 22:50:57
Hola Melqui,

No comprendo bien ... Parece me que HMLDocument es bien par mostrar documento recibido pero no comprendo de lo usar para escribir el contenido del mail.
No sé como escribir dentro un HMLDocument.
Solamente puedo pasar un Link de un Texto a un WebBrowser.URL. o un texto a WebBowser.DoncumentText, pero no sé escribir con el teclado.

Si tiene un ejemplo simple, me gustaría de lo recibir ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de melqui
Val: 643
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Nombre del archivo y el peso

Publicado por melqui (242 intervenciones) el 21/09/2020 00:41:00
hola phil,
este es un ejemplo que hice, para que tengas una base de como trabajar con webbrowser, yo vi que es mas interesante porque asi customizo crear una seriedad de codigo desnecesario, para envio de correo en html,

en mi caso especialmente estoy cambiando mi sistema de las pantallas tradicionales a los mas modernos, la mayoria en mi caso tuve que crear de cero como los componentes básicos, mas yo nunca vi mucho sobre webbrowser, solo usaba cuando era para automatizar algun trabajo mas sin pensar que el es bueno para trabajar basicamente todo. como cualquier si fuera elemnto de texto.
tal como está en la imagen
Screenshot_2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Phil Rob
Val: 3.353
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Nombre del archivo y el peso

Publicado por Phil Rob (1546 intervenciones) el 21/09/2020 11:50:08
Muchas gracias para este ejemplo. Es perfecto.

En tu mensaje de 16/09/2020 01:35:08, pregunta " ... será que es posible de como tratar solamente el nombre del archivo ? ".
Supongo que este problema es solucionar pero si no, este la repuesta (que veo ahora para responder en otro foro) :
Con el OpenFileDialog, tienes que usar de SafeFileNames a lugar de FileNames.

Ejemplo (1 Button y 1 TextBox en el Form) :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim MiOpenFileDialog As New OpenFileDialog
        MiOpenFileDialog.Multiselect = True
        TextBox1.Text = ""
 
         If MiOpenFileDialog.ShowDialog = System.Windows.Forms.DialogResult.OK Then
            Dim Paths As New System.Collections.Specialized.StringCollection
 
            Paths.AddRange(MiOpenFileDialog.SafeFileNames)
            Clipboard.SetFileDropList(Paths)
 
            For N As Integer = 0 To Paths.Count - 1
                TextBox1.Text &= Clipboard.GetFileDropList(N) & "; "
            Next
 
            Clipboard.Clear()
        End If
 
    End Sub

Que tenga un buen día ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar