用delphi写程序读其他程序调用的DLL文件中内存地址的方案 20

已知A程序在特定的页面中会调用到一个abc.dll的文件,里面存放着一些数据,我用CE找到的地址也是必须在这个页面下才能正常读取,在其他页面时就读不到了,请问能不能用DE... 已知A程序在特定的页面中会调用到一个abc.dll的文件 ,里面存放着一些数据,我用CE找到的地址也是必须在这个页面下才能正常读取,在其他页面时就读不到了,请问能不能用DELPHI编程首先能够一直读到这个地址? 展开
 我来答
ledo88
2016-11-28 · 超过18用户采纳过TA的回答
知道答主
回答量:45
采纳率:0%
帮助的人:10.5万
展开全部
Windown Api:

LoadLibrary
载入指定的动态链接库,并将它映射到当前进程使用的地址空间。一旦载入,即可访问库内保存的资源,成功则返回库模块的句柄,零表示失败

FreeLibrary
释放指定的动态链接库

用 LoadLibrary 载入 abc.dll

var
 RasLib : THandle;
 Str:array[0..255] of Char;
begin
 RasLib := LoadLibrary (PChar(AppPath+'abc.dll')) ;
  try
    if RasLib <> 0 then begin
       //资源类型为 Bitmap,资源 ID 为 1
       Bitmap1.Handle:=LoadBitmap(RasLib, MakeIntResource(1));
       
       //资源类型为 icon,资源名称 为 MainIcon
       icon1.Handle := LoadIcon(RasLib,  'MainIcon');
       
       //资源类型为 String,资源 ID 为 3
       if LoadString(RasLib, 3, @Str, sizeof(Str)) <> 0 then
          Label1.Caption := StrPas(Str);

       //载入任意类型资源
       with TResourceStream.Create(RasLib, 资源名称, 资源类型) do begin
       try
        SaveToFile('d:\.....');
         ....
        SaveToStream(Stream);
       finally
         Free;
       end;
    end;
  finally
   FreeLibrary(RasLib);
  end;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式