<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6000.16735" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=153140315-05122008>Hi,</SPAN></FONT></DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=153140315-05122008>&nbsp;Can you send us a sample test program that fails 
?</SPAN></FONT></DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=153140315-05122008></SPAN></FONT>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=153140315-05122008>Regards,</SPAN></FONT></DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=153140315-05122008>Jayesh</SPAN></FONT></DIV><FONT face=Arial 
color=#0000ff size=2></FONT><BR>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> mpich-discuss-bounces@mcs.anl.gov 
[mailto:mpich-discuss-bounces@mcs.anl.gov] <B>On Behalf Of 
</B>Vivian<BR><B>Sent:</B> Friday, December 05, 2008 12:05 AM<BR><B>To:</B> 
mpich-discuss@mcs.anl.gov<BR><B>Subject:</B> [mpich-discuss] problem of calling 
.dll in mpich<BR></FONT><BR></DIV>
<DIV></DIV>Hi,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I met some problems when I was 
trying to call a dll in a mpich program (Language:VS 
2005).<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (1) MPICH seems to only support calling 
convention&nbsp; _cdecl. <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; When I change 
the project setting to _stdcall, the code cannot be successfully 
built.<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; So I set the 
project setting back to _cdecl and force the calling convention of the function 
pointer to my function on the DLL to be "_stdcall". This time the program is 
built. <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Under 
debugging mode or directly run in command window ( c:&gt;test.ext), there is no 
problem to call dll in the code.<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Here is 
the code:<BR>&nbsp; &nbsp; 
-------------------------------------------------------------------------------- 
<BR>&nbsp;&nbsp;&nbsp;&nbsp; typedef char (__stdcall *AVRUN) (char[100]);&nbsp; 
<BR>&nbsp;&nbsp;&nbsp;&nbsp; HINSTANCE ArcviewDLL;&nbsp; 
<BR>&nbsp;&nbsp;&nbsp;&nbsp; AVRUN AVRun;<BR>&nbsp;&nbsp;&nbsp;&nbsp; 
ArcviewDLL= LoadLibraryA("Avhelp.dll");&nbsp;&nbsp;&nbsp; 
<BR>&nbsp;&nbsp;&nbsp;&nbsp; AVRun = (AVRUN) GetProcAddress(ArcviewDLL, 
"AVRun");<BR><BR>&nbsp;&nbsp;&nbsp; 
AVRun("av.run(\"HAO_script3\",\"\")");<BR>&nbsp;&nbsp;&nbsp; 
-------------------------------------------------------------------------------<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
(2) However, the program fails to call dll when I use "mpiexec" to run it. 
(c:&gt;mpiexec -n 1 
test.exe).<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; It 
seems to "stop" right before this line<BR>&nbsp; 
-------------------------------------------------------------<BR>&nbsp;&nbsp;&nbsp; 
AVRun("av.run(\"HAO_script3\",\"\")");<BR>&nbsp; 
-------------------------------------------------------------<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
Is there anyone having any idea why this happens?<BR 
clear=all><BR>--<BR>Vivian<BR></BODY></HTML>