vb.net - 需要帮助将 Vb.Net 转换为 Delphi (API Stuff (?))

标签 vb.net delphi winapi process

    Dim ThisModule As IntPtr
    Dim Proc As Process() = Process.GetProcessesByName("Sol")

    For i = 0 To Proc(0).Modules.Count - 1
        If (Proc(0).Modules(i).ModuleName.ToString.Contains("UxTheme")) Then
            ThisModule = Proc(0).Modules(i).BaseAddress
        End If
    Next

我已经制作了这段代码,并且运行良好,但是现在......我想在 Delphi 中制作它,问题是......我没有足够的知识来制作它,而且......在谷歌中,我没有找到了我需要的信息。

提前致谢!。

最佳答案

您需要使用较低级别的 API,即工具帮助 API。如何获得所需内容的基本大纲如下:

  • 调用 CreateToolhelp32Snapshot()通过TH32CS_SNAPPROCESS .
  • 接下来使用 Process32First() 处理流程和 Process32Next()直到你找到你想要的过程。
  • 调用 CloseHandle()关闭快照。
  • 调用 CreateToolhelp32Snapshot()再次,这次通过 TH32CS_SNAPMODULE以及在步骤 2 中找到的所需进程 ID。
  • 使用 Module32First() 走模块和 Module32Next()直到你找到你想要的模块。
  • 调用 CloseHandle()关闭快照。
  • 关于vb.net - 需要帮助将 Vb.Net 转换为 Delphi (API Stuff (?)),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5929921/

    相关文章:

    database - VB.NET 循环遍历 Access 数据库

    c# - 文件上传asp.net

    delphi - RichEdit 不尊重带有粘贴内容的纯文本

    windows - 关于 SetWindowsHookEx() 和 Hook 的问题

    c++ - 使用事件同步线程

    mysql - 如何在MySQL查询中进行子聚合排序

    .net - 如何从 "AssemblyInfo"项目创建资源

    delphi - 将具有不同通用类型的对象放在一起

    delphi - 使用框架时有没有办法拥有类似 KeyPreview 的功能?

    c++ - 为什么 HttpOpenRequest 可能会失败并出现错误 122?