Voici ma fonction
void LancementProcess(const std::string sCheminComplet,const std::string sNumeroTest)
{
//Change la variable environnement
SetEnvironmentVariable(TEXT("sgmroot"),TEXT("c:\\SGMTEST1\\DEV"));
// Prepare the external script execution via a process
std::string _CommandLine = sCheminComplet + " " + sNumeroTest;
STARTUPINFO _SI;
PROCESS_INFORMATION _PI;
// Connect standard handles
ZeroMemory(&_SI,sizeof(STARTUPINFO));
_SI.cb=sizeof(STARTUPINFO);
_SI.dwFlags=STARTF_USESHOWWINDOW|STARTF_USESTDHANDLES;
_SI.wShowWindow=SW_HIDE;
_SI.dwFlags=STARTF_USESTDHANDLES;
_SI.hStdInput=NULL;
_SI.hStdOutput=NULL;
_SI.hStdError=NULL;
// Create process and wait for achievement
CreateProcess(NULL, (LPTSTR)_CommandLine.c_str(), NULL, NULL, TRUE, NULL, NULL, NULL, &_SI, &_PI);
DWORD _Result = WaitForSingleObject(_PI.hThread, INFINITE);
}
Je voit pas trop ce que tu veut dire par passer l'Environnement , quoique j'ai bien essayer de lui passer directement "sgmroot=c:\\test1"