• 締切済み

ボタンをクリックしてファイルを開く

Microsoft Visual Basic 2010 Expressを使ってプログラミングをし始めた初心者です。 Windowsフォームアプリケーションを作っているのですが、わからないことがありましたので質問します。 あるボタンを作り、そのボタンを押したときに特定のファイルをシステムで設定してある既定のプログラム(docxならWord、xlsxならexcelなど)で開くプログラムを作成したいです。 うまく説明できてないと思うので、下記が例です。 「Button1」を作ったとします。 そして、「Button1」をクリックしたときに、 例えばマイドキュメントの「A.docx」をWordで開くように設定するには どのようにクリックイベントのプログラムを作成すればよいのでしょうか? よろしくお願いします。

みんなの回答

  • pcb39431
  • ベストアンサー率84% (16/19)
回答No.5

解決しましたか?

  • pcb39431
  • ベストアンサー率84% (16/19)
回答No.4

Process.Startを使った処理ではダメなのでしょうか? それならば、API関数を使った方法を紹介します。 使い方はご自身で考えてください。

参考URL:
http://www.winapi-database.com/Program/Shell/ShellExecute.html
  • pcb39431
  • ベストアンサー率84% (16/19)
回答No.3

Process.Startを使った処理例 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim MyDoc As String 'My Documentsフォルダを取得 MyDoc = System.Environment.GetFolderPath(Environment.SpecialFolder.Personal) Try 'ファイルを既定のアプリケーションで開く Process.Start(MyDoc & "\A.doc") Catch ex As Exception 'エラーの場合 MsgBox(ex.Message, MsgBoxStyle.Critical, "エラー") End Try End Sub

  • pcb39431
  • ベストアンサー率84% (16/19)
回答No.2

関連付けられたアプリケーションでファイルを開くには、  Process.Start(ファイル名) と指定します。

  • layy
  • ベストアンサー率23% (292/1222)
回答No.1

方法はいろいろあります。 「ファイル選択ダイアログ」を使う。ソフトのファイルを開く、によくある仕組み、ドライブとフォルダを選んでファイル選択する。サンプルもネットにあります。 それか コントロールにあるドライブリスト、フォルダリスト、ファイルリストを組み合わせて使う。ドライブ変わったとき、フォルダ変わったとき、ファイルをダブルクリックしたとき、随時イベントに処理を記載して行きます。 開くファイルが決まっているならSHELLあたり参考。 ファイルを決めるところから考えたいのでしょうか?。

y-king2
質問者

補足

Button1ならAのファイル、Button2ならBのファイルのように、 開きたいファイルは固定です。 ファイル選択ダイアログを使わずに、 ボタンをクリックするだけで起動するようにしたいです。

関連するQ&A