今天在操作wmplayer.exe批处理的过程中,发现当传递的参数中含有空格时,就会导致执行失败,具体代码如下:

ShellExecuteA(NULL,
"open"
,
"wmplayer.exe"
,“
F:\\1 2.mp3”
, NULL,SW_SHOWNORMAL);
由于文件名中含有空格“1 2.mp3”,而系统把空格作为参数之间隔开的标识,从而导致“2.mp3”被误认为了第二个参数,于是执行失败。
通过网上查阅资料发现,把路径再加上双引号能够解决这个问题。于是有:
问题FIXED!