Hi,
 
  I'am trying to use R in my Cpp project but I fail. 
 
 First I try to include R.h for loading statically R.dll but there is
conflict with windows definition of Error.
 
 Second, I try to use dynamically that Dll but, I can't use allocVector
(toto here). The error message said that I try to read a no allocate
zone.
 
This is my code.
 
typedef SEXP (*MYPROC)(SEXPTYPE,int);
MYPROC toto;
 
int _tmain(int argc, _TCHAR* argv[])
{  
      HINSTANCE hLib=LoadLibrary("R.DLL");
      if(hLib==NULL) {
           cout << "Unable to load library!" << endl;
           getch();
           return 0;
      }
      char mod[MAXMODULE];
      GetModuleFileName((HMODULE)hLib, (LPTSTR)mod, MAXMODULE);
      cout << "Library loaded: " << mod << endl;
      getch();
      toto=(MYPROC)GetProcAddress((HMODULE)hLib, "Rf_allocVector");
      if((toto==NULL)) {
           cout << "Unable to load function(s)." << endl;
           FreeLibrary((HMODULE)hLib);
           return 1;
      }
       SEXP ab;// = new SEXPREC;
       ab = (toto) (REALXP,2);
 
}
 
Third I have download R COM.
 
I' am looking for counsel. Am I compulsory to use   R com or not?
If not how can I improve my code?
Do you have an idea?
 
JBB
 
 
	[[alternative HTML version deleted]]