I'm attempting to communicate with an RPC Server that is accessible via a Tcl API. I've updated to the latest perl version: This is perl 5, version 16, subversion 3 (v5.16.3) built for MSWin32-x86-multi-thread (Binary build 1603 296746) and have the Tcl Module 1.02. I've compiled the dp42.dll file for Windows 7 using the files available here: http://sourceforge.net/projects/tcldp/files/tcldp-4.2.0/. In my Perl code, I'm now able to successfully load the dll, but when I try and call one of the functions to make the RPC Client, Perl crashes with no details.
use Tcl;
our $interp = Tcl->new;
$interp->Eval('source Tools/rpc.tcl');
$interp->Eval('source Tools/dp_atexit.tcl');
$interp->Eval('source Tools/dp_atclose.tcl');
$interp->Eval('load Tools/dp42.dll');
$interp->Eval('set tcl_version [info patchlevel]');
my $tcl_version= $interp->GetVar('tcl_version');
print "Version of TCL: '$tcl_version'\n";
$interp->Eval('set iw [dp_MakeRPCClient <IP> <port>]');
The version of TCL is printed as '8.5.13'. However, right after this is displayed, I get the 'Perl Command Line Interpreter has stopped working' message and no details in the Event Viewer:
Faulting application name: perl.exe, version: 5.16.3.1603, time stamp: 0x5140cc97
Faulting module name: unknown, version: 0.0.0.0, time stamp: 0x00000000
Exception code: 0xc0000005
Fault offset: 0x00000000
Faulting process id: 0x1bc8
Faulting application start time: 0x01ce559334a550b9
Faulting application path: C:\Perl\bin\perl.exe
Faulting module path: unknown
Report Id: 72729299-c186-11e2-babe-e06995c96f5c
I can run the same commands if I invoke the Tcl shell directly.
Any ideas?