トップ回答者
ロングファイル名からショートファイル名への変換方法を教えてください

質問
回答
-
とっちゃんです。
呼び出したいコンソールアプリがなにかわからないので、NGという場合もありえますが、32bitアプリならロングパスはサポートしているはず(というより、サポートしていないとソフトウェアとして使いづらい)です。
ロングネームに対応しているのであれば、"" でパラメータをくくってあげれば問題なく動作します(コマンドラインからの呼び出しの場合も同じ)。
本当は、スペースがある場合はくくるというのがお作法なんですが、ない場合はくくってはいけないということもありません。
ソフトの中には、""でくくられて起動されるとおかしな挙動をするものもありますが、その場合は逆に、くくらずに呼び出せばよいと思います。
ショートパスで無ければならないという場合は、GetShortPathName API を使うのが良いでしょう(C++ですしね)。
この場合、PlatformSDK が別途必要になります(デフォルトではインストールされていないため)。
すべての返信
-
とっちゃんです。
呼び出したいコンソールアプリがなにかわからないので、NGという場合もありえますが、32bitアプリならロングパスはサポートしているはず(というより、サポートしていないとソフトウェアとして使いづらい)です。
ロングネームに対応しているのであれば、"" でパラメータをくくってあげれば問題なく動作します(コマンドラインからの呼び出しの場合も同じ)。
本当は、スペースがある場合はくくるというのがお作法なんですが、ない場合はくくってはいけないということもありません。
ソフトの中には、""でくくられて起動されるとおかしな挙動をするものもありますが、その場合は逆に、くくらずに呼び出せばよいと思います。
ショートパスで無ければならないという場合は、GetShortPathName API を使うのが良いでしょう(C++ですしね)。
この場合、PlatformSDK が別途必要になります(デフォルトではインストールされていないため)。