I'm considering to move a working program (which loads j.dll) from J version 8.07 to current 9.03, but JDo fails to execute any sentence.
(1) No issues with the previous 8.07 version. (2) No issues on Linux. (3) No issues with JInit, JFree, JSetM, JGetM. (4) To confuse things more, no issues with calling JDo from 9.03 JQt window, e.g.: libj =: 'jj.dll' p =: (libj, ' JInit x') cd '' (libj, ' JDo i x *c') cd p, <'A =: i. 2 3' +-+-------------+-----------+ |0|2534909943808|A =: i. 2 3| +-+-------------+-----------+ (5) Return code 17 when called from, e.g., the following C program, compiled with mingw gcc (real program uses FFI and is not C). #include <windows.h> #include <stdio.h> typedef void* (_stdcall *JInitType)(void); typedef int (_stdcall *JDoType)(void*, LPSTR); int main(void) { HINSTANCE hinstLib; JInitType JInit; JDoType JDo; void *j; int result; // hinstLib = LoadLibrary("C:\\Users\\vadim\\j64-807\\bin\\j.dll"); hinstLib = LoadLibrary("C:\\Users\\vadim\\j903\\bin\\j.dll"); JInit = (JInitType) GetProcAddress(hinstLib, "JInit"); JDo = (JDoType) GetProcAddress(hinstLib, "JDo"); j = (JInit)(); printf("%u\n", j); result = (JDo)(j, "vec =: i. 10"); printf("%u\n", result); return 0; } ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm