#include<windows.h>
#include<tchar.h>
#include<stdio.h>

int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE hPreInst, LPSTR lpszCmdLine, int nCmdShow)
{
 STARTUPINFO si;
 PROCESS_INFORMATION pi;

 printf("%s", __targv[1]);

 CreateProcess(NULL,
        __targv[1],
        NULL,
        NULL,
        FALSE,
        0,
        NULL,
        NULL,
        &si,
        &pi);

 return 0;
}

コマンドラインオプションの第一引数で指定したファイルを実行したいのですが
printfでは正常にファイル名が表示されるのに実行されません。
どこがおかしいのでしょうか?