- - PR -
パスの自動取得について
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2008-09-15 17:17
じゃんぬねっとさん、返信遅れてしまって申し訳ありませんでした。
前回、質問した時学校の課題の締め切りが迫っていたことから、nyugeさんの方法を使用させていただきました。 しかし、さらに制作を続けていて、やはりプログラミングでの解決をしたいと思っております。 | ||||||||||||
|
投稿日時: 2008-09-15 17:33
続けて書き込みすいません。
お世話になります! 現在、制作物として、フォームに配置したボタンを押すと、それに対応した画像を表示させるものを制作しています。 (例:”あ”のボタンを押すと、”あ”の画像をpictureboxに表示) 画像はaccessにテーブル内にファイル名を入れておき、それを呼び出して表示させています。 {現在の接続文字列} Dim Cn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\\ゼミ\\ゆび.mdb") {Accessで管理している画像のファイル名} F:\\ゼミ\\指文字\\あ.JPG としています。 しかし、これでは、他のUSBやパソコンでは使用できないことからパスの受動取得をしたいと考えています。 ルートディレクトリを取得してみうようと思い、 Dim RootName As New System.IO.DirectoryInfo("F:\\ゼミ") Dim RootInfo As System.IO.DirectoryInfo = RootName.Root を加え、接続文字列を Dim Cn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & RootInfo.FullName & ".mdb") と書き換えてみました。 しかし、Adapter.Fill(table)の部分でエラーが発生し、 OleDbExceptionはハンドルされませんでした。 ファイル'F:\\,mdb'が見つかりませんでした。 という内容のメッセージが表示されます。 うまく取得ができていないと思うのですが、具体的にどこに不具合があるのかがわかりません。 分かる方いらっしゃいましたらよろしくお願いします。 また、ルートディレクトリの取得以外にも方法がありましたら、そちらもお願いいたします。 | ||||||||||||
|
投稿日時: 2008-09-15 20:18
いわゆる新しい質問をするためのフィードバックというやつですね。 新しい質問は新しいスレッドで行いましょう。
不具合というよりそういう作りにしてしまっているだけとしか答えようがないです。 逆に説明がとっても難しいです。
ファイル名の指定がないということがここからわかりますよね。 ファイル名の指定がないのは Root を取得してファイル名を指定していないからです。
そのように組んでいるということがわからないのであれば、RootName.Root の中身を参照してください。 ルートが何たるかご存知ない状態で (あるいは勘違いをして) 使っているようにしか見えないです。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||
|
投稿日時: 2008-09-16 00:46
「VBでのプログラム」とmdbや画像は必ず同じドライブにあるという前提でいいんですかね。 その場合、プログラムの階層より下にmdbや画像があるならこっちのほうが使いやすいかもしれません。 http://msdn.microsoft.com/ja-jp/library/system.environment.currentdirectory(VS.80).aspx |