procedure TForm1.Button1Click(Sender: TObject);
var
  handle_lib:THandle;
  func:function(oldstr:Pchar):Pchar;
begin
handle_lib:=loadlibrary('StringProc.DLL');
if handle_lib>32 then
begin
  func:=getprocaddress(handle_lib,'StrTrimAll');//获取StrTrimAll函数的入口地址.
  edit2.Text:=string(func(Pchar(edit1.Text)));//调用StrTrimAll.
  func:=getprocaddress(handle_lib,'StrBlankWithUnderline');
  edit3.Text:=string(func(Pchar(edit1.Text)));
  freelibrary(handle_lib);
  end
end;
-------------------------------------------
谁能给解释下,32的详细意思,在这里代表甚么意思,具体有甚么用.谢谢.

解决方案 »

  1.   

    handle_lib<>nil即可吧,为什么要大于32,这是谁写的。  
      

  2.   

    func:function(oldstr:Pchar):Pchar;   是啥意思?
      

  3.   

    1:loadlibrary( 'StringProc.DLL '); 
    这是一个加载过程,如果加载不成功的话,的应该小于32
    2:
    func:function(oldstr:Pchar):Pchar;       是啥意思?
    声明调用,这个应该我StringProc.DLL定义的一个函数
      

  4.   

    HINSTANCE_ERROR = $20;(即10进制32)表示加载 DLL 错误。