gpt4 book ai didi

c# - Bitmap.GetPixel() 不返回任何内容

转载 作者:行者123 更新时间:2023-12-03 04:29:43 25 4
gpt4 key购买 nike

正如标题所示,调用 Bitmap.GetPixel 不会产生任何结果。没有为变量赋值,也没有抛出异常。

这是我的测试代码:

private void frmStatTracker_Load(object sender, EventArgs e)
{
ScreenCapture sc = new ScreenCapture();
Color charlie = new Color();
foreach (Process p in Process.GetProcesses())
{
if (p.MainWindowTitle.Contains("DM -"))
{
sc.CaptureWindowToFile(p.MainWindowHandle, "C:\\test.png", System.Drawing.Imaging.ImageFormat.Png);
Image i = sc.CaptureWindow(p.MainWindowHandle);
Bitmap b = new Bitmap(i);
pictureBox1.Image = b;

charlie = b.GetPixel(65, 41);
return;
}
}
}

当我在代码上断点时,我得到以下信息:

我有来自 screenCapture 的有效图像。

b 中有一个有效的图像。

查理已经没有任何值(value)了。当我将其添加到监视列表时,它告诉我当前上下文中不存在 charlie,并且“局部变量”窗口中不存在该变量。如果我在声明或其赋值的行上设置断点,则断点将被命中并看起来正在运行。

我束手无策,不知道如何开始解决此类问题。帮忙?

谢谢:-)

最佳答案

您正在调试发布(或其他优化)版本。这就是 charlie 不存在的原因。该变量仅被分配,未以其他方式使用。编译器已将其优化掉。

编辑:您可以通过使用调试构建来防止这种情况,或者正如 David Heffernan 所说,通过使用 charlie 做一些有意义的事情。

关于c# - Bitmap.GetPixel() 不返回任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7959749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com