質問: dllのパス取得 windowsxp+office2000環境です。 ファイルの構成は同じホルダの中に aa.xls、bb.dll、cc.iniになっています。 aa.xexcelシート上にボタンをつけて、ボタンを押すと、dllを呼んでいます。 このdllの中ではdllの位置のiniファイルを読んでいます。 dllの中でfinder.findfile("cc.ini"); を用いて呼んでいますが、iniファイルの検出ができません。なぜでしょうか。
回答: defaultfilepathって、規定のパスを変えるだけなので、 カレントは変更されていません。 なので、呼べません。 で、カレントを変えるのは、#3の方が書かれているchdirです。 で、dllの検索順ですが、windowsではここに書かれている順序で行われます。 http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpfileio/html/_win32_searchpath.asp なんで、一番安全で確実なのは、pathを通すことです。