■40918 / ) |
Re[5]: Process.Startメソッドの引数について |
□投稿者/ 魔界の仮面弁士 (1273回)-(2009/09/07(Mon) 13:49:28)
|
■No40909 (らんぺるーる さん) に返信 > プログラム上において、どのフォルダがカレントディレクトリとして > 扱われるのかは、知識がなかったので調べてみます。
カレント ディレクトリは、ドライブごとにそれぞれ存在しています。
ショートカットのプロパティでいうところの「作業フォルダ」は、アプリケーションの 起動直後における「カレント ドライブ上のカレント ディレクトリ」を指しています。
> 何かの処理を行った際に、カレントディレクトリが他のフォルダに設定され、 > アプリケーションが呼び出せなくなったのだと思います。
カレントディレクトリは、ユーザー操作(ファイルを開く/保存のダイアログなど)によって 変更される可能性があります。また、プログラムから変更する事も可能です。 たとえば、VB.NET であれば、このように書けます。
ChDrive("C") 'カレント ドライブを C: にする。 CurDir("C:\Program Files\") 'カレント ディレクトリを C:\Program Files にする。
'現在のディレクトリ位置を確認する。 Dim d1 As String = CurDir() Dim d2 As String = My.Computer.FileSystem.CurrentDirectory
Windows アプリケーションの場合、現在のカレントディレクトリ位置は ユーザーには把握しにくいですし、アプリケーションの内部処理としては、 常に絶対パスとして処理させるようにした方が良いでしょうね。
|
|