我在Win10 32位机器上开发了这段代码。我在面板上放了一些图形,pnlFull。然后复制pnlFull的内容并将其保存为磁盘上的bmp文件。调试/发布/任何计算机/32位/64位都可以在32位机器上正常工作。发布32位/64位/任何计算机都不能在64位机器上正常工作。在64位计算机上,副本的原点位于pnlFull之外。根据我的表格在屏幕上的位置,副本的来源甚至在表格之外。我非常感谢任何帮助。
Private Sub Capture_Preset()
Using tmpImg as New Bitmap(pnlFull.Width, pnlFull.Height)
Using g as Graphics = Graphics.FromImage(tmpImg)
g.CopyFromScreen(pnlFull.PointToScreen(New Point(0, 0)), New Point(0, 0), New Size(pnlFull.Width, pnlFull.Height))
End using
tmpImg.Save("C:\ProgramData\Paedia\DiablocData\PresetImg(" & PresetNumber & ").bmp", Imaging.ImageFormat.Bmp)
End using
End Sub