2014年3月28日金曜日

DXライブラリー日記 「相対パスとカレントディレクトリと喉元過ぎれば~」

そういえばそうだった的に思い出した事案――


ミーナの馬鹿が「データフォルダ作って」などというので、

「めんどうくさいのでフォルダに全部放り込んでEXEファイルへの相対パスでショートカットでもつくりなさい」

と言って追い払ったのですが、出来ないと言う。

そんな馬鹿なと思って調べてみると――

Windows Script Programming
ショートカットに相対パスを指定する。

対処できるようだけど、Vistaでは出来ないとか、OSごとの対応などしたくない。
苦肉の策でバッチファイル書いてみたらどうか? とやってみたが、コマンドプロンプトが表示されるので格好良くない。ついでに言うとカレントフォルダがバッチファイルの位置になるようで、指定した先のプログラムがフォルダの中のファイルを相対参照しようとすると、見事に落ちる事が発覚。そりゃそうだ。



あ~あ、と敗戦処理的に画像だの音だのをdataフォルダに放り込む仕様に変更……

――うごかない。

はぁ~?




~~~ 3時間経過~~~







思い出した!
思い出した!
余りにムカ着火ファイヤーだったので、綺麗さっぱり記憶から消し去っていたと思われ。








VC++から実行ボタン押すときは、プロジェクトファイルの位置がカレントフォルダ!

プロジェクトファイルの下に、リリース版フォルダやデバッグ版フォルダの位置にEXEファイルができるけど、そこに各種ファイル置いても無駄。

testっていうプロジェクトなら、dataフォルダは以下のように配置。






exeファイルがあるからと、以下のようにに騙されてはイケナイ。






セーブデータはまぁいいだろう。










0 件のコメント: