none
Como codificar um botão para abrir um documento em meu computador que tenham extensão *.doc RRS feed

  • Pergunta

  • Olá pessoal, bom dia, alguém poderia me ajudar a implementar este procedimento:

    Codificar um botão de um formulário para abrir um documento em meu computador que tenham extensão *.doc

    Esse documento será escolhido para ser enviado via email. Já sei como enviar o email, só preciso de programar o botão escolher arquivo.

    Obrigado.

    Henrique

    terça-feira, 26 de fevereiro de 2013 14:54

Respostas

  • Olá amigo !

    repare que para FileNames, atributo da classe OpenFileDialog, ele traz um array com vários caminhos ai é só você passar para o txt

    TextBox1.Text = FileDlg.FileName // 1 arquivo...

    então amigo... eu faço faculdade sim, estou no segundo ano de ciências da computação, tenho 18 anos, sou programador C#, eu sou muito autodidata, pesquiso muitas coisas ai a gente vai aprendendo, trabalho com desenvolvimento de sistemas tbm, e uso recursos de vários tipos, inclusives eses ai rs, procuro ir em eventos de desenvolvimento, olhar em sites, revistas e novidades, conversar com os caras que já estão na área a muito tempo e tal e agora, comecei aqui no forum mes passado, respondendo e vendo as respostas vc vê modos diferentes de pensar e vai aprendendo tbm tudo é aprendizado ! rs ... E estudando sempre !!!

    Afonso Fernandes

    • Marcado como Resposta SRick quinta-feira, 28 de fevereiro de 2013 14:05
    quarta-feira, 27 de fevereiro de 2013 16:00
  • Olha amigo, aqui no vb.net tem o objeto printer que é a evolução do objeto printer do vb6,

    é meio complexo para explicar aqui, vai precisar ser bem autodidata...

    um exemplo muito bom é o do macoratti:

    http://www.macoratti.net/vbn_prn2.htm

    http://www.macoratti.net/09/09/c_prn1.htm  ' em c#

    http://www.macoratti.net/vbn_prn.htm

    ve se te ajuda...

    Abraços !

    • Marcado como Resposta SRick sexta-feira, 1 de março de 2013 01:34
    quinta-feira, 28 de fevereiro de 2013 19:00

Todas as Respostas

  • Boa Tarde Henrique !!

    seguinte, para você pegar a extensão é 

    foreach( String File in Directory.GetFiles( " Seu caminho ") )
    {
         if( new FileInfo(File).Extension.ToUpper() == "DOC")
         {
             System.Diagnostics.Process.Start( File ); //executa o arquivo doc
          }
    }

    abraços !

    Afonso Fernandes

    • Sugerido como Resposta Vitor Mendes terça-feira, 26 de fevereiro de 2013 15:50
    terça-feira, 26 de fevereiro de 2013 15:40
  • Obrigado Afonso Fernandes.

    Como ficaria esse código no VB? Ah! gostaria que ao clicar no botão fosse aberto uma caixa de diálogo para que eu possa escolher a pasta e mostrando na pasta escolhida somente arquivos com extensão *.doc.

    Valeu amigo.

    Henrique

    terça-feira, 26 de fevereiro de 2013 17:56
  • aqui amigo !

    For Each File As [String] In Directory.GetFiles(" Seu caminho ")
    	If New FileInfo(File).Extension.ToUpper() = "DOC" Then
    			'executa o arquivo doc
    		System.Diagnostics.Process.Start(File)
    	End If
    Next
    
    'o seguinte código em vb.net
    
    'e para abrir você pode:
    
    
    
    Dim FileDlg as OpenFileDialog
    
    FileDlg = new OpenFileDialog()
    FileDlg.Multiselect = true
    FileDlg.Filter = "Arquivos word 2000-2003 (*.dlc)|*.doc"
    
    'e seguindo esse exemplo seu for ia ficar assim
    
    For Each File As [String] In FileDlg.FileNames
    	If New FileInfo(File).Extension.ToUpper() = "DOC" Then
    			'executa o arquivo doc
    		System.Diagnostics.Process.Start(File)
    	End If
    Next
    


    terça-feira, 26 de fevereiro de 2013 18:17
  • Olá Afonso, me desculpe minha pouca experiência mas ainda não deu certo, coloquei este código no botão enviar:  obs COLOQUEI UM OPENFILEDIALOG NA BANDEIJA. mas não funcionou.

      Private Sub btnAbrir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAbrir.Click
            Dim FileDlg As OpenFileDialog
            FileDlg = New OpenFileDialog()
            FileDlg.Multiselect = True
            FileDlg.Filter = "Arquivos word 2000-2003 (*.dlc)|*.doc"

            'e seguindo esse exemplo seu for ia ficar assim

            For Each File As [String] In FileDlg.FileNames
                If New FileInfo(File).Extension.ToUpper() = "DOC" Then
                    'executa o arquivo doc
                    System.Diagnostics.Process.Start(File)
                End If
            Next
        End Sub

    Onde será que estou errando?

    Obrigado

    Henrique

    terça-feira, 26 de fevereiro de 2013 19:18
  • hehe

    faltou o método

    ShowDialog

     FileDlg.Filter = "Arquivos word 2000-2003 (*.dlc)|*.doc"

     FileDlg.ShowDialog()

    coloque logo abaixo amigo !

    abraços !

    terça-feira, 26 de fevereiro de 2013 19:23
  • Olá amigo, muito obrigado, veja o erro que deu depois que inseri o código

    "O formulário que já está visível não pode ser exibido como caixa de diálogo modal. Defina a propriedade visible do formulário como falsa antes de chamar showDialog"

    Private Sub btnAbrir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAbrir.Click
            Dim FileDlg As OpenFileDialog
            FileDlg = New OpenFileDialog()
            FileDlg.Multiselect = True
            FileDlg.Filter = "Arquivos word 2000-2003 (*.dlc)|*.doc"

            'e seguindo esse exemplo seu for ia ficar assim

            For Each File As [String] In FileDlg.FileNames
                If New FileInfo(File).Extension.ToUpper() = "DOC" Then
                    'executa o arquivo doc
                    System.Diagnostics.Process.Start(File)
                End If
            Next
            ShowDialog()
            FileDlg.Filter = "Arquivos word 2000-2003 (*.dlc)|*.doc"
            FileDlg.ShowDialog()
        End Sub

    Desculpa a amolação ai.

    Henrique

    quarta-feira, 27 de fevereiro de 2013 12:17
  • mano tamo junto ! rs

    estamos aqui para ajudar =D

    se liga: faz assim

    Private Sub btnAbrir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAbrir.Click
            Dim FileDlg As OpenFileDialog
            FileDlg = New OpenFileDialog()
            FileDlg.Multiselect = True
            FileDlg.Filter = "Arquivos word 2000-2003 (*.dlc)|*.doc"
            FileDlg.ShowDialog()
    
           
            For Each File As [String] In FileDlg.FileNames
                If New FileInfo(File).Extension.ToUpper() = "DOC" Then
                    'executa o arquivo doc
                    System.Diagnostics.Process.Start(File)
                End If
            Next
                  
        End Sub

    tenta ai e me fala..

    abraços !

    quarta-feira, 27 de fevereiro de 2013 13:15
  • OK consegui abrir a caixa de diálogo. Agora como faço para selecionar um arquivo ai o nome do arquivo ir para uma caixa de texto (que é a caixa de texto que será anexado o arquivo para enviar por email, coforme você me ensinou).

    Valeu mano.área?

    A próposito, você fez faculdade nessa área? como você aprendeu tudo isso?

    Henrique

    quarta-feira, 27 de fevereiro de 2013 15:23
  • Olá amigo !

    repare que para FileNames, atributo da classe OpenFileDialog, ele traz um array com vários caminhos ai é só você passar para o txt

    TextBox1.Text = FileDlg.FileName // 1 arquivo...

    então amigo... eu faço faculdade sim, estou no segundo ano de ciências da computação, tenho 18 anos, sou programador C#, eu sou muito autodidata, pesquiso muitas coisas ai a gente vai aprendendo, trabalho com desenvolvimento de sistemas tbm, e uso recursos de vários tipos, inclusives eses ai rs, procuro ir em eventos de desenvolvimento, olhar em sites, revistas e novidades, conversar com os caras que já estão na área a muito tempo e tal e agora, comecei aqui no forum mes passado, respondendo e vendo as respostas vc vê modos diferentes de pensar e vai aprendendo tbm tudo é aprendizado ! rs ... E estudando sempre !!!

    Afonso Fernandes

    • Marcado como Resposta SRick quinta-feira, 28 de fevereiro de 2013 14:05
    quarta-feira, 27 de fevereiro de 2013 16:00
  • Olá amigo, obrigado, agora ficou "falando", rs.

    Bem eu já tenho 43 anos, sou militar e desde dos 24 anos que gosto de programação, aprendi a programar com dbase, depois clipper e hoje estou pelejando para aprender visual basic .net. Já sabia um pouquinho do VB 6, mas sofria muito quando ia instalar algum programa em vb6 por causa das dll, etc...

    Bom ano que vem estou aposentando e mesmo um pouco mais velho pretendo fazer um curso de ciencia da computação aqui na minha cidade na UFLA (moro em Lavras/MG), pois sou apaixonado por programação de computador.

    E ai, qual é a diferença de vb e c#? qual é melhor? qual é mais fácil?

    Valeu e sucesso na sua carreira.

    Ah! estou aprendendo também Asp Net. comprei vários cursos em vídeo no portal Treinamentosti.com.br (dê uma olhado é muito legal esse site, os cursos são excelentes)

    Tem algum livro didádico de vb net que você me recomenda?

    Henrique

    quinta-feira, 28 de fevereiro de 2013 13:23
  • hehe muito bom amigo !

    estudar é sempre bom, não pode parar, e quando a gente gosta, vira hobbie hehe...

    meu hobbi é estudar asp.net mvc, html5 + css3 + js, gosto de web, mas amo desktop rsrs

    a diferença eu diria principal é semantica, acho o c# mais 'bonito' aos olhos... mais fácil, acho que é relativo, é questão de adpatação, ambos usam as mesmas classes, o que muda é a sintaxe...

    recomendo usar o asp.net mvc 3 ( ou 4 // ultimo ) são perfeitos...

    eu fiz meu tcc em vb6 rsrs, ele era chatinho mas era super prático, até o deploy kkkkk

    olha, não tenho muitos livros, recomendo uns sites:

    http://www.macoratti.net

    http://ferhenriquef.com/

    aqui, o nosso fórum, e codeproject

    são os que eu mais gosto...  e o resto é fuçar e ir aprendendo com os erros... sempre.

    Afonso Fernandes

    quinta-feira, 28 de fevereiro de 2013 13:50
  • deu certinho o esquema das mensagens e emails amigo ?

    hehe esqueci de perguntar.. 

    ABraços !

    quinta-feira, 28 de fevereiro de 2013 13:50
  • Certinho, ficou do jeito que eu queria. Estou precisando aprender mais orientação a objetos, pois facilita muito né.

    Um abraço.

    Henrique

    quinta-feira, 28 de fevereiro de 2013 14:05
  • Cara, é essencial a orientação a objetos...

    no macoratti tem vários exemplos...

    você programa orientado a objetos e não percebe kkkk

    o vb.net e c# são linguagens OO

    quando vc pegar a manhã e indo conhecer essas classes vai ficando super simples...

    tem livro do use a cabeça muito bom para isso...

    Um Abraço !

    Afonso.

    quinta-feira, 28 de fevereiro de 2013 14:13
  • Olá Afonso, preciso de ajuda, estou a desenvolver um pequeno programa para uma Cantina e gostaria que a medida que for realizando vendas já saia impresso em uma impressora que usa papel tipo bobina. cupom naõ fical.

    Os dados abaixo vão para um listbox, então a cada item comprado, gostaria que alem de inserir no listbox ser impresso também na impressora.

    Ex.:

    CODIGO     DESCRICÃO     QTD       PREÇO UNITARIO     PREÇO TOTAL

    0028           Refri Lata          2                     1,50                   3,00

    1674           Skol Lt 350 ml   2                      2,00                  4,00

                                                                                         ------------------------------

    Total da Compra                                                                   7,00

    tem como fazer? no vb 6 usaba o objeto printer. Mas no vb net não sei se é possível.

    quinta-feira, 28 de fevereiro de 2013 17:09
  • Olha amigo, aqui no vb.net tem o objeto printer que é a evolução do objeto printer do vb6,

    é meio complexo para explicar aqui, vai precisar ser bem autodidata...

    um exemplo muito bom é o do macoratti:

    http://www.macoratti.net/vbn_prn2.htm

    http://www.macoratti.net/09/09/c_prn1.htm  ' em c#

    http://www.macoratti.net/vbn_prn.htm

    ve se te ajuda...

    Abraços !

    • Marcado como Resposta SRick sexta-feira, 1 de março de 2013 01:34
    quinta-feira, 28 de fevereiro de 2013 19:00
  • Obrigado, vou pesquisar nos links que você sugeriu.

    sexta-feira, 1 de março de 2013 01:35