I will give one example of many that will get you the dreaded Aknex.exe Crashed after the compile process is done also. Might help someone.
Old dll stuff will get you crashed with no warning very easily. Not to mention the changing of the dll code itself.
C-Script Version:
Let's say we had an old dll function declared as
dll_function SendString(some_string);
string temp_string;
now we call the SendString function with
SendString(temp_string);
or
SendString("Hi Mom!");
This works fine in C-Script.
C-Lite version of dll function:
function SendString(STRING* some_string);
STRING* temp_string = "#16";
now we call SendString function with
SendString(temp_string); // this is ok
or
SendString("Hi Mom!"); // Oops, we get one of those damn Aknex crashes with no data on this line
it should be
SendString(_str("Hi Mom!")); // this is right
But if you don't get it right, don't expect C-Lite to tell you what happened because it won't. You will have to hunt this line of code down in your own slow painful way.
This is not the only post compile aknex.exe crash with no info you can get, there are quite a few, but just a common one that might help others when it comes to passing temp strings to dll functions.
Now I am done, off to bed,
Loco