c´est pas grave, merci quand même.
finalement j´ai réussi à le faire marcher avec le moteur de script de windows.
pour info, voici el code que j´utilise :
- import " msscript.ocx" / /c´est de ce #import que résidait le secret qui m´était inconnu !
using namespace MSScriptControl;
HRESULT hr = CoInitialize(NULL);
IScriptControlPtr pScriptControl(__uuidof(ScriptControl)); // Create a VARIANT array of VARIANTs which hold BSTRs
void ScriptInit()
{
pScriptControl->Language = " VBScript";
pScriptControl->AllowUI = FALSE;
}
void ScriptDeInit()
{
CoUninitialize();
}
long ScriptEval(char *CMD,char *Sortie,long Len)
{
_variant_t outpar = pScriptControl->Eval(CMD);
_bstr_t bstrReturn = ( _bstr_t)outpar;
StrCopy((char *)bstrReturn,Sortie,MAX_SIZE);
return StrLen(Sortie);
}
il faut appeller scriptinit une fois au début du prog et deinit une fois à la fin.
dans le code d´exemple de Microsoft, il mettaient ce code directement dans la fonction principal, mais pour une raison inconnue l´appel à la propriété language est vraiment très long ( plusieurs secondes ( peut-être 5 ou 10)) donc c´estbcp mieux de le faire au début.
mon code est assez allégé car la code original exécutait la méthode run et non pas la méthode eval qui est plus simple à appeller.