是你自定义的吧????
_______________________________________________________________多多交流    共同进步
[email protected]
http://nizvoo.myrice.com
_______________________________________________________________

解决方案 »

  1.   

    我是实验下面帖子中的函数时遇到的
    http://www.csdn.net/expert/Topic/9/9132.shtm
      

  2.   

    把具体代码贴出来,
    你肯定是没有  use 定义 TDllProcedure 的单元
      

  3.   

    下面是我从贴子中copy的,运行时到lpFunc : TDllProcedure;出现undeclared indentifier
    我想也是没有用什么单元但是查不出来,用F1也查不到相关TDllProcedure的信息,我试着加了comserv单元也没有用,不知为什么//*********************************************************
    使用regserver会出现一个DOS窗口,显得很不雅,还是最好使用下面的函数(经过测试,没有问题),思想是调用Com DLL中的DllRegisterServer函数来完成自注册。
    function RegisterDll(strDllPath : string) : boolean;
    var
      hLib : THandle;
      lpFunc : TDllProcedure;
      strName : string;
    begin
      strName := strDllPath;  hLib := LoadLibraryEx(pChar(strName), 0,LOAD_WITH_ALTERED_SEARCH_PATH);
      if hLib = 0 then
      begin
        result := false;
        exit;
      end;  try
        lpFunc := GetProcAddress( hLib, 'DllRegisterServer' );
        if not Assigned(lpFunc) then
        begin
          result := false;
          exit;
        end;    lpFunc;
        result := true;
      finally
        FreeLibrary( hLib );
      end;
    end;
      

  4.   

    你哪个TDllProcedure 是从哪里来的,
    我怎么好象没有见过,你直接定义成函数形式就可以了,参数要和 'DllRegisterServer' 的参数一致