1 创建库:
create or replace library LIB_XXX
  as 'c:\xxx.dll';
 
2 调用接口:
FUNCTION Uf_Close RETURN BINARY_INTEGER IS
LANGUAGE c
LIBRARY Lib_XXX NAME "DLL中的函数";3 配置监听listener.ora和tnsnames.ora

解决方案 »

  1.   

    第3步资料较少:
    # 成功连接服务器的环境配置                                                     
      
      -------------------------------------------------------------------------------
      # 监听器部分                                                                   
      -------------------------------------------------------------------------------
      LISTENER =                                                                     
        (DESCRIPTION_LIST =                                                          
          (DESCRIPTION =                                                             
            (ADDRESS_LIST =                                                          
              (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))                           
            )                                                                        
            (ADDRESS_LIST =                                                          
              (ADDRESS = (PROTOCOL = TCP)(HOST = 本地计算机名)(PORT = 1521))         
            )                                                                        
          )                                                                          
        )                                                                            
      
      # 1. KEY = EXTPORC 后面的0,1,...代表要访问的SID对应注册表的 HOME0,HOME1, ... 等
      # 2. HOST 用IP的方式不好,对WIN2000SERVER,如果本地没有插网线,则不能用连接串访问 
      # 3. HOST 用计算机名方式需要注意的是,如果计算机名称改变后,要及时修改这里的名称 
                                                                                     
                                                                                     
      # 以下部分中(SID_NAME = PLSExtProc),(PROGRAM = ExtProc)都是固定写法.           
      SID_LIST_LISTENER =                                                            
        (SID_LIST =                                                                  
          (SID_DESC =                                                                
            (SID_NAME = PLSExtProc)                                                  
            (ORACLE_HOME = D:\Oracle\Ora81)                                          
            (PROGRAM = ExtProc)                                                      
          )                                                                          
          (SID_DESC =                                                                
            (GLOBAL_DBNAME = 数据库实例SID名称)                                      
            (ORACLE_HOME = D:\Oracle\Ora81)                                          
            (SID_NAME = 数据库实例SID名称)                                           
          )                                                                          
        )                                                                            
                                                                                     
                                                                                     
      -------------------------------------------------------------------------------
       tnsnames.ora 连接配置部分                                                     
      -------------------------------------------------------------------------------
      # 访问数据库                                                                   
      连接串名称 =                                                                   
        (DESCRIPTION =                                                               
          (ADDRESS_LIST =                                                            
            (ADDRESS = (PROTOCOL = TCP)(HOST = 主机名称/IP地址)(PORT = 1521))        
          )                                                                          
          (CONNECT_DATA =                                                            
            (SERVICE_NAME = 数据库实例SID名称)                                       
          )                                                                          
        )                                                                            
      
      # 1. 访问本地外部过程 推荐!!                                                   
      extproc_connection_data =                                                      
            (DESCRIPTION =                                                           
              (ADDRESS =                                                             
                (PROTOCOL = IPC)                                                     
                (KEY = EXTPROC0)                                                     
              )                                                                      
              (CONNECT_DATA =                                                        
                (SID = PLSExtProc)                                                   
              )                                                                      
            )                                                                        
                                                                                     
                                                                                     
      # 2. 访问远程外部过程,如果(host=),则是访问本地                                 
      #    tnsping extproc_connection_data 能够通                                    
      #    但在调用数据库服务器上的dll时报错ORA-28575                                
      extproc_connection_data =                                                      
        (DESCRIPTION =                                                               
          (ADDRESS =                                                                 
            (PROTOCOL = TCP)                                                         
            (Host = 主机名称/IP地址)(Port = 1521)                                    
          )                                                                          
          (CONNECT_DATA = (SID = ExtProc)                                            
          )                                                                          
        )                                                                            
      

  2.   

    csdn 的格式真差劲,凑合着看吧。