DOBON.NET DOBON.NETプログラミング掲示板過去ログ

カレントフォルダーの取得

環境/言語:[vb2005]
分類:[ASP.NET]

vb6ではapp.pathでアプリケーションのカレントフォルダーが取得できたのですが
vb2005ではMy.Computer.FileSystem.CurrentDirectoryで取得するとD:\DATA\VB2005Test\WindowsApplication2\bin\Debugとなってしまいます。
プログラムはD:\DATA\VB2005Test\WindowsApplication2に保存してあるのですが
なぜかその中のbin\Debugフォルダーになってしまいます。
どうすればD:\DATA\VB2005Test\WindowsApplication2を取得できるのでしょうか
よろしくお願いします。
ここのサイトの.NET プログラミング Tipsにあります。
質問前に確認してください。
http://dobon.net/vb/dotnet/vb6/apppath.html
ありがとうございます。
参考にしてやってみましたが、結果おなじです。デバッグ開始ボタンで実行したらやはりbin\Debugフォルダーがついてきます
■No17722に返信(たかぼんさんの記事)
> 参考にしてやってみましたが、結果おなじです。デバッグ開始ボタンで実行したらやはりbin\Debugフォルダーがついてきます

それが正常なので何が不満なのかわかりません。

ついでに、

> vb6ではapp.pathでアプリケーションのカレントフォルダーが取得できたのですが
> vb2005ではMy.Computer.FileSystem.CurrentDirectoryで取得するとD:\DATA\VB2005Test\WindowsApplication2\bin\Debugとなってしまいます。

VB6のApp.Pathは、実行ファイルと同じパスを返すのであって、カレントディレクトリなどという意味は持ちませんよ。
根本的な誤解があるので一度落ち着いて勉強した方がいいかもしれません。
  • 題名: Re[1]: カレントフォルダーの取得
  • 著者: 渋木宏明(ひどり)
  • 日時: 2006/09/28 16:21:05
  • ID: 17725
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
「カレントフォルダ」と「実行ファイルが配置されているフォルダ」が必ずしも同じではない、というのは理解されていますか?

「カレントフォルダ」が取得したいのであれば、My.Computer.FileSystem.CurrentDirectory で取得できるフォルダがそれです。

「実行ファイルが配置されているフォルダ」が取得したいなら、Path.GetDirectoryName(Application.ExecutablePath) 等で取得します。

DOBON.NET | プログラミング道 | プログラミング掲示板