如何删除一个文件里面的资源,比如a.exe文件的RT_RCDATA类型下有一个名为LOVE的资源,如何删除并可以减少原文件大小?
我测试代码如下:function DeleteResource(const FileName: string; const ResType, ResName: PChar): Boolean;
var
  hUpdate: Cardinal;
begin
  Result:= False;
  hUpdate:= BeginUpdateResource(PChar(FileName), False);
  if hUpdate = 0 then Exit;
  try
    Result:= UpdateResource(hUpdate, ResType, ResName, 0, nil, 0);
  finally
    EndUpdateResource(hUpdate, not Result);
  end;
end;procedure TForm1.Button7Click(Sender: TObject);
begin
  if DeleteResource('a.exe',RT_RCDATA,'LOVE') then
     ShowMessAge('OK')
  else ShowMessAge('Err');
end;测试后,名为LOVE的资源确实是删除了,但是体积没有减少...
我用ResHacker删除资源,体积是会根据所删除的资源大小而减少的.
有那位可以帮忙解决实现ResHacker的删除效果!致谢!