Win32::API->Import($S{DLL_path}, 'int RegisterClient2(int *pnClientId, char *pszIPAddress)'); ... my $result = RegisterClient2($client_id, $S{read_IP}); #### my $RegisterClient2 = Win32::API->new($S{DLL_path}, 'int RegisterClient2(int *pnClientId, char *pszIPAddress)'); ... my $result = $RegisterClient2->Call($client_id, $S{read_IP}); #### use strict; use warnings; use Inline C => Config => MYEXTLIB => 'd:\path\to\CrappyLibrary.dll', #use Inline C => Config => LIBS =>'-Ld:/path/to -lCrappyLibrary', INC => '-Id:\path\to',BUILD_NOISY => 1; use Inline C => 'DATA'; my $result = RegisterClient2($client_id, $S{read_IP}); __DATA__ __C__ #include "Easy4ApiDef.h" #### Set up gcc environment - 3.4.5 (mingw-vista special r3) Use of inherited AUTOLOAD for non-method main::RegisterClient2() is deprecated at inline.pl line 115. Can't locate auto/main/RegisterCli.al in @INC (@INC contains: D:\meres\SAR\_Inline\lib C:/Perl/site/lib C:/Perl/lib .) at inline.pl line 115 #### extern "C" __declspec(dllexport) int RegisterClient2(int *pnClientId, const char *pszIPAddress);