1.我用Delphi建了一个best.dll工程,其中包含了test.rc,test.rc的内容如下:
STRINGTABLE
{
 10001, "测试1"
 10002, "测试2"
 10003, "测试3"
}
把这个工程编译得到 best.dll
2.我再建了一个工程test.exe,把best.dll copy到test目录下。在Test中放了一个Label,和一个Button。
在Button1的OnClick中有如下代码:
procedure TForm1.Button1Click(Sender: TObject);
var
  hin : THandle;
  ch :LPTSTR;
begin  hin := LoadLibrary('chen.dll');
  if(hin=0)then
    ShowMessage('fail')
  else
  begin
    LoadString(hin,10003,ch,255);
  end;  Label1.Caption := ch;
  FreeLibrary(hin);
end;
运行正常。
但我在FormCreate中加如上代码时报如下错误:
Access violation at address 00435014 in module 'test.exe'. Read of address DDBEFDB6.请产生这个问题的原因,如何解决?