[fpc-pascal] mciSendString with long file names

James Richters james.richters at productionautomation.net
Thu Sep 22 20:57:14 CEST 2022


Won’t backslashes before each space be defining a subdirectory?

If my path looks like:
C:\Program Files\My Program\Some File.MP3 
I don't see how changing it to:
C:\Program\ Files\My\ Progam\Some\ File.MP3 can possibly work.. it's just butchering the path.

James


From: fpc-pascal <fpc-pascal-bounces at lists.freepascal.org> On Behalf Of Travis Siegel via fpc-pascal
Sent: Wednesday, September 21, 2022 4:15 PM
To: FPC-Pascal users discussions <fpc-pascal at lists.freepascal.org>
Cc: Travis Siegel <tsiegel at softcon.com>; Jean SUZINEAU <jean.suzineau at wanadoo.fr>
Subject: Re: [fpc-pascal] mciSendString with long file names

Adding a backslash (\) before each space should do the job nicely.  I have had similar issues on linux and windows with some commands, and adding the escape characters to the filename almost always fixes the problem.  The only time it didn't, was when the filename started with a dash "-" character.  Otherwise, the backslash always works for me.

On 9/20/2022 4:16 PM, Jean SUZINEAU via fpc-pascal wrote:
May be by escaping the spaces with ^ ?
Something like:  MyFileName:= StringReplace(MyFileName, ' ', '^ ', [rfReplaceAll]);
^ is the escape char for cmd.exe but may be it is active in this context too ?
Le 20/09/2022 à 18:31, James Richters via fpc-pascal a écrit :
I just tried it that way:
Var 
pcmd: String;
MyFileName: String;
 
pcmd:='play "'+MyFileName+'"'+#0;
mciSendString(@pcmd[1],Nil,0,0);
 



_______________________________________________
fpc-pascal maillist  -  mailto:fpc-pascal at lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal



More information about the fpc-pascal mailing list