When I get to the strcpy line, I am getting
An unhandled exception of type 'System.AccessViolationException' occurred.
Additional information: Attempted to read or write protected memory.
This is often an indication that other memory is corrupt.
char* str; char* out;
str = (char*) Marshal::StringToHGlobalAnsi(Parms["AVI"]).ToPointer();
strcpy(out, str);
Marshal::FreeHGlobal(IntPtr(str));
You need to allocate memory and point
outto that memory. As it is right now,outpoints to some random memory location.