C++Builder 写的一个动态库,对应函数,
  如下: extern "C" __declspec(dllexport) int __stdcall GetPIDByCardNo( char* sCardNo, char* sPID, char* sErr );  VC2008中在控制台程序上可以调用,程序如下:
typedef int ( _stdcall *GetPIDByCardNoFunc )( char *, char *, char * );int main()
{
  char sCardNo[18];
  char sPID[20];
  char sErr[100];
  memset( sCardNo, 0x00, sizeof( sCardNo ) );
  memset( sPID, 0x00, sizeof( sPID ) );
  memset( sErr, 0x00, sizeof( sErr ) );
  strncpy( sCardNo, "87109823", sizeof( sCardNo ) - 1 );  GetPIDByCardNoFunc _GetPIDByCardNoFunc ;  HINSTANCE hInstLibrary = LoadLibrary(L"KCPIDNO.dll");  
  if (hInstLibrary == NULL)  
  {  
    
  FreeLibrary(hInstLibrary);  
  }
  else
  {  
    
  }    _GetPIDByCardNoFunc = (GetPIDByCardNoFunc)GetProcAddress( hInstLibrary, "GetPIDByCardNo" );
    
  if ( _GetPIDByCardNoFunc == NULL )  
  {  
  FreeLibrary( hInstLibrary ); //释放  
  }
  else
  {  
  _GetPIDByCardNoFunc( sCardNo, sPID, sErr );
  
cin.get(); FreeLibrary(hInstLibrary); // 调用完后,要释放内存。  
  }  
    
}
同样的调用程序将其放到 ActiveX工程中就出现 GetProcAdrress 返回 GetPIDByCardNoFunc 值为 NULL??
  这是怎么回事呢???
  拜求指点。谢谢!!!??
公开(695805548)  15:44:01
C++Builder 写的一个动态库,对应函数,
  如下: extern "C" __declspec(dllexport) int __stdcall GetPIDByCardNo( char* sCardNo, char* sPID, char* sErr );  VC2008中在控制台程序上可以调用,程序如下:
typedef int ( _stdcall *GetPIDByCardNoFunc )( char *, char *, char * );int main()
{
  char sCardNo[18];
  char sPID[20];
  char sErr[100];
  memset( sCardNo, 0x00, sizeof( sCardNo ) );
  memset( sPID, 0x00, sizeof( sPID ) );
  memset( sErr, 0x00, sizeof( sErr ) );
  strncpy( sCardNo, "87109823", sizeof( sCardNo ) - 1 );  GetPIDByCardNoFunc _GetPIDByCardNoFunc ;  HINSTANCE hInstLibrary = LoadLibrary(L"KCPIDNO.dll");  
  if (hInstLibrary == NULL)  
  {  
    
  FreeLibrary(hInstLibrary);  
  }
  else
  {  
    
  }    _GetPIDByCardNoFunc = (GetPIDByCardNoFunc)GetProcAddress( hInstLibrary, "GetPIDByCardNo" );
    
  if ( _GetPIDByCardNoFunc == NULL )  
  {  
  FreeLibrary( hInstLibrary ); //释放  
  }
  else
  {  
  _GetPIDByCardNoFunc( sCardNo, sPID, sErr );
  
cin.get(); FreeLibrary(hInstLibrary); // 调用完后,要释放内存。  
  }  
    
}
同样的调用程序将其放到 ActiveX工程中就出现 GetProcAdrress 返回 GetPIDByCardNoFunc 值为 NULL??
  GetLastError() = 127