在一个exe文件中查找指定内容,找到则返回起始位置, 否则返回0

//在一个exe文件中查找指定内容,找到则返回起始位置, 否则返回0
//如果某字符串, 直接传入字符串进来
//如果要查找16进制,则用如下格式传参进来: #$1A#$2A#$3A

复制代码
function FindString(FileName, FindStr: string): Int64;
var
  FileStream: TFileStream;
  i: Int64;
  Buff: string;
begin
  FileStream := TFileStream.Create(FileName, fmOpenRead);
  SetLength(Buff, FileStream.Size);
  FileStream.Position := 0;
  FileStream.ReadBuffer(PChar(Buff)^, FileStream.Size);
  i := Pos(FindStr, Buff);
  if i > 0 then Result := i-1 else Result := 0;
  FileStream.Destroy;
end;
复制代码

http://www.cnblogs.com/jxgxy/archive/2009/03/12/1409481.html

posted @   findumars  Views(482)  Comments(0Edit  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
历史上的今天:
2014-11-14 Golang哲学思想
点击右上角即可分享
微信分享提示