CreateProcessW is using Unicode. I believe the 'W' stands for wide string. The same thing for LPCWSTR. You appear to be mixing the two since your path variable is an ordinary C-string.
Try putting an 'L' in front of the string literals.