Visual c++ 命令行CreateProcess在WinXP上执行,但不在Win7和Win8上执行
我正在Windows下使用cwRsync同步目录。我通过Visual C++代码VisualSudio 2008调用命令行。 我使用CreateProcess函数来执行它。 问题:在Windows XP上,同步工作正常。在Windows 7和8上,同步不工作。当我直接在cmd.exe下测试命令行时,它可以工作 Windows 7和8中的CreateProcess存在什么问题?没有错误消息,因为函数返回OKVisual c++ 命令行CreateProcess在WinXP上执行,但不在Win7和Win8上执行,visual-c++,command-line,windows-xp,createprocess,Visual C++,Command Line,Windows Xp,Createprocess,我正在Windows下使用cwRsync同步目录。我通过Visual C++代码VisualSudio 2008调用命令行。 我使用CreateProcess函数来执行它。 问题:在Windows XP上,同步工作正常。在Windows 7和8上,同步不工作。当我直接在cmd.exe下测试命令行时,它可以工作 Windows 7和8中的CreateProcess存在什么问题?没有错误消息,因为函数返回OK 我找到了解决办法。问题在于我使用的CreateProcess在XP中工作,但在Win7中不
我找到了解决办法。问题在于我使用的CreateProcess在XP中工作,但在Win7中不工作
BOOL WINAPI CreateProcess(
_In_opt_ LPCTSTR lpApplicationName,
_Inout_opt_ LPTSTR lpCommandLine,
_In_opt_ LPSECURITY_ATTRIBUTES lpProcessAttributes,
_In_opt_ LPSECURITY_ATTRIBUTES lpThreadAttributes,
_In_ BOOL bInheritHandles,
_In_ DWORD dwCreationFlags,
_In_opt_ LPVOID lpEnvironment,
_In_opt_ LPCTSTR lpCurrentDirectory,
_In_ LPSTARTUPINFO lpStartupInfo,
_Out_ LPPROCESS_INFORMATION lpProcessInformation
);
之前:
lpApplicationName=NULL
lpCommandLine=C:\cwRsync\rsync.exe-recursive/cygdrive/d/documents//cygdrive/f/documents/
Windows XP=>OK,但Windows 7=>KO
现在:
lpaApplicationName=C:\cwRsync\rsync.exe
lpCommandLine=-recursive/cygdrive/d/documents//cygdrive/f/documents/
Windows XP=>正常和Windows 7=>也正常生成的.exe没有权限?在Windows 7/8(而不是Windows XPI)中,以管理员身份运行.exe,但在Windows 7/8中尚未运行rsync命令