空白のあるパスの処理に関して

解決


nobu  2005-11-27 22:21:56  No: 18914  IP: 192.*.*.*

初めまして  nobu  と申します。
Delphi初心者です。以下の内容で困っています。
よろしくご指導をお願いします。

mciSendStringでMIDIを再生する場合、パスに空白があるとうまく再生されません。

mciSendString(Pchar('open '+'C:\Documents and Settings\パパ\デスクトップ\乱数くじ\'+'BGM03.MID'+' type sequencer alias midifile'),nil,0,0);

""でくくると良いということなのですが、どこの部分を""でくくるのでしょうか?
いろいろやってるのですが、うまくいきません。

  また、空白を含むパス名が  Name  などの変数に代入されている場合は
どのようにするのでしょうか?よろしくお願い致します。

編集 削除
にしの  2005-11-28 09:16:10  No: 18915  IP: 192.*.*.*

パスをダブルコーテーションで括ります。
例えばNameにファイル名のフルパスが代入されている場合、

mciSendString(Pchar('open "'+ Name +'" type sequencer alias midifile'),nil,0,0);
こんな感じになると思います。

編集 削除
nobu  2005-11-28 20:05:23  No: 18916  IP: 192.*.*.*

にしのさん

やっと解決して、音が出ました。
Open 以降のフォルダー名+ファイル名を括ってということですね。
とても助かりました。ありがとうございました。
(違う箇所に掲載してしまったメッセージにも回答していただき
ありがとうございました)
これからもよろしくお願いします。

編集 削除
nobu  2005-11-28 20:07:16  No: 18917  IP: 192.*.*.*

解決しました。

編集 削除