自プロジェクトの所在フォルダの取得方法

解決


HTML-M  2008-04-02 19:34:07  No: 144556

自プロジェクトの所在フォルダの取得方法を
教えてください


HTML-M  2008-04-02 19:35:00  No: 144557

バージョン:VisualBasic2008ExpressEdision


シャノン  2008-04-02 19:50:37  No: 144558

プロジェクト内のコードで取得したいということですか?

方法はあると思いますが、どうしてそういうことをしたいのかが気になります。
デバッグモードならともかく、リリースしたら、コンパイルした exe なり dll とプロジェクトは関係なくなると思うので、その場合はどうなるんでしょうか。


やじゅ  2008-04-02 21:52:20  No: 144559

中級者の方だから、実行ファイルのフォルダってわけでも
なさそうですね。
http://dobon.net/vb/dotnet/vb6/apppath.html

自プロジェクトの所在フォルダってことは、vbprojがある
フォルダってことになるので、全てのドライブでファイル
検索するしかないのでは?


シャノン  2008-04-03 19:04:36  No: 144560

複数あったらどうするんだろ。
そもそも、カレントディレクトリとかでなくプロジェクトのディレクトリを何に使いたいのか疑問です。


HTML-M  2008-04-04 01:14:58  No: 144561

やっぱり、初〜中の間ぐらいです。

配布先のファイル環境がどうなっているのかわからないのです。

たとえば、CドライブとDドライブを分けている環境では、
D:\ProgramFilesにアクセスしなければならない場合があります。

そもそも、ディストリビューションウィザードが使えないので、
インストールディレクトリがわからないのです。


HTML-M  2008-04-04 01:22:48  No: 144562

発行済みexeで、効果音などを呼び出すとなると、
一緒にWAV等のファイルを送らなければいけないので。

あと、もう一つの方法があるんですけど、
ソリューションエクスプローラーに効果音を追加して、

ネームスペースで呼び出せますか?

プロジェクト名.〜〜〜〜〜〜〜〜〜〜
というようなコードで呼び出す


シャノン  2008-04-04 01:49:23  No: 144563

おそらく、知りたいのはプロジェクトの場所ではなくて exe ファイルの場所ではないですか?
例えば、D:\Program Files\Hoge\Hoge.exe にインストールされているとき、D:\Program Files\Hoge\ が欲しいのですよね。
それが知りたいのであれば、やじゅさんが提示してくれたリンク先を見てください。
効果音を鳴らしたい場合、例えば D:\Program Files\Hoge\wav\sound.wav にファイルがあるとして、D:\Program Files\Hoge\ が特定できれば、あとはそのパスに wav\sound.wav をくっつければいいわけですからね。

配布形態がわからないのですが、通常、ビルドしたら exe ファイルと、必要であれば wav 等のファイルを配布して、ソースコードは配布しませんよね。
exe と wav だけ受け取った人は、「プロジェクト」を持っていませんから、リリース環境に「プロジェクトの所在フォルダ」というのはありません。

プロジェクトにリソースを追加することで、
> プロジェクト名.〜〜〜〜〜〜〜〜〜〜
とすることは可能です。
http://dobon.net/vb/dotnet/programing/vsresource.html
ただし、音声ファイルをいくつも埋め込むと、exe ファイルのサイズが肥大しますので注意してください。

リソースとして埋め込まなくても、
> プロジェクト名.〜〜〜〜〜〜〜〜〜〜
という呼び出し方にすることはできますが、それは要するにそういう呼び出し方で使えるクラスを自分で作るということなので、これという決まりきった方法はありません。
興味があればご自分で試行錯誤してみてください。


HTML-M  2008-04-04 02:01:11  No: 144564

とても参考になりました!
ありがとうございます。
(正常に動作が確認できたら、解決チェックします。)

あと、exeに埋め込むのと、他から呼び出すのはどっちがファイルサイズが小さいですか?

・同じ  ・exe  ・他から


HTML-M  2008-04-04 02:01:32  No: 144565

↑合計のサイズです。


HTML-M  2008-04-04 02:13:05  No: 144566

Dim Audio As Object

プロジェクト名.My.Resources.オーディオ
My.Computer.AudioPlay(Audio)

で再生できませんでした

My.Computer〜省略〜では再生できませんか?


HTML-M  2008-04-04 02:24:02  No: 144567

追加

Dim Audio As Object

Audio=プロジェクト名.My.Resources.オーディオ
My.Computer.AudioPlay(Audio)

で再生できませんでした

My.Computer〜省略〜では再生できませんか?


あのー  2008-04-04 03:53:46  No: 144568

タイトルと内容が違うものになってるんだから、別スレ立てた方がいいんでは?
本当は
> 2008/04/03(木) 16:22:48
の時点で別スレッド化の方がよかったんじゃ・・・


シャノン  2008-04-04 19:09:37  No: 144569

> あと、exeに埋め込むのと、他から呼び出すのはどっちがファイルサイズが小さいですか?

普通に考えて同じだと思いますが。


シャノン  2008-04-04 19:10:08  No: 144570

> 別スレ立てた方がいいんでは?

だとしても、スレ主以外が勝手に解決しない方がいいと思います。


ありゃ  2008-04-05 06:16:14  No: 144571

間違って解決済みにしちゃったーい

すいませーん(てへw)


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加