相対パスメモ
- 特別な文字は :, /, \。特に / と \ は区切り文字。
- 先頭が\のときはルートからの相対パス
- 先頭が/のときはカレントディレクトリからの相対パス
- 先頭の/チェックのあとはすべての/を\に置き換えて良い(ShellExecuteは/だと動作しない?)
- 先頭が./となる場合はカレントディレクトリからの相対パス
- 先頭が../となる場合はカレントディレクトリの1つ上からの相対パス
- 区切り文字のあとに.を1つはさむ場合は、無視する。
- 区切り文字のあとに.を2つはさむ場合は、1つ上の階層を無視する。
- 上記二つは、 / が \ になっていればShellExecuteがやってくれそう。
- 代わりにパスの最大長に注意。
- ShellExecute関数の動作についてもう少し調べたほうが良い。
ShellExecuteは ../ 以外は自動で解釈してくれる。(\,/が混ざっていても動く、ただc:をcドライブのカレントディレクトリとは解釈しない)
上は勘違い。何もしなくても解釈してくれたぽい。作業ディレクトリの指定は要るかも