【问题标题】:How i convert IEnumerable<long> to long我如何将 IEnumerable<long> 转换为 long
【发布时间】:2018-12-29 10:18:09
【问题描述】:

我为游戏制作版本检查器。我们无法从任何地方看到游戏版本。我们刚刚找到了带有作弊引擎的版本字符串。这是版本字符串地址=56 32 2E ?? ?? ?? 00 00

我正在使用Memory.DLL 进行ArrayOfBytes 扫描,然后我想将其更改为字符串。

我尝试了很多方法,但我无法解决这个问题。

这里有错误:

using Memory;

private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
        while (true)
        {
            int pID = m.getProcIDFromName("Growtopia");

            bool openProc = false;

            if (pID > 0) openProc = m.OpenProcess(pID);
            long myAobScan = m.AoBScan(0x700000000000, 0x7FFFFFFFFFFF, "56 32 2E ?? ?? ?? 00 00").Result; //ERROR AT HERE... // VERSION ADDRESS
            vers.Text = myAobScan.ToString();

            if (openProc)
            {
                m.writeMemory("0x7FF6F22818C7", "bytes", "0x90 0x90"); // BAN BYPASS
            }
        }
}

IEnumerable 参数:

public async Task<IEnumerable<long>> AoBScan(long start, long end, string search, bool writable = false, bool executable = true, string file = "")

【问题讨论】:

  • 也许你的minimal reproducible example 应该解释这个IEnumerable&lt;long&gt; 来自哪里......以及你想如何转换成单个long......非常不清楚你有什么问题。
  • @AlexeiLevenkov 可以再检查一次吗?
  • 发生了一些事情,代码从帖子中消失了——我不确定这是否是故意的,但代码应该是内联的——请再次检查stackoverflow.com/help/how-to-ask,看看你在阅读时是否错过了一些指导以前。
  • 请直接在此处发布代码,使用格式正确的文本 - 不要只发布代码链接或代码截图 - 发布代码!

标签: c# memory process ienumerable long-integer


【解决方案1】:

IEnumerable 可以包含 0 到几十万个长整数。所以你的问题是,它需要知道你想使用多长时间。

如果不知道 AoBScan 的行为方式(仅知道参数对理解该方法的作用并没有多大帮助),很难判断您是否期望它只长一个,或者有很多可供选择。

话虽如此,要将 IEnumerable 转换为单个实例,您必须选择其中一项。有几种方法可以做到...

你可以用下面的来拉出第一个

long myAobScan = m.AoBScan(0x700000000000, 0x7FFFFFFFFFFF, "56 32 2E ?? ?? ?? 00 00").Result.First();

或者下面拉出最后一个

long myAobScan = m.AoBScan(0x700000000000, 0x7FFFFFFFFFFF, "56 32 2E ?? ?? ?? 00 00").Result.Last();

或者编写一个 Where 谓词来提取符合您期望的条件的谓词

long myAobScan = m.AoBScan(0x700000000000, 0x7FFFFFFFFFFF, "56 32 2E ?? ?? ?? 00 00").Result.Where(lng => lng > 10);

所有这些都会将 ONE 拉出 IEnumerable。如果您需要将它们全部取出并将它们转换为字符串,那完全是一个不同的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-04-07
    • 1970-01-01
    • 2020-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-26
    • 2017-01-04
    相关资源
    最近更新 更多