ShellExecuteを使ってcmd.exeを呼び出し、batファイルを実行し、その際にフォルダパスを引数に入れたいのですが、batが正常に実行できません。

#include <Windows.h>
#pragma comment( lib, "shell32.lib")

CString strCommand;
CString strPath;
strPath = "\"C:\\Sample Folder\\Test\""
strCommand = "/c \"C:\\Test\\Sample.bat\" " + strPath;
ShellExecute(NULL, "open", "cmd.exe", strCommand, "", SW_SHOW);

引数のフォルダ名称に半角スペースがない場合で、パスの両端をダブルクォーテーションで括らない場合は動作するのですが、上記のように半角スペースが存在する場合も考えられるため、両端をダブルクォーテーションで括る必要があるのですが、その場合batが動作しません。

宜しくお願いします。