2012-03-13 58 views
0

我有一個應用程序將捕獲屏幕,我想將捕獲到的信息寫入一個數組,這需要AGES,因爲數組結果爲+2百萬個值。我迭代並將值添加到數組中,有沒有更快的方法(例如二進制操作)?它應該是這樣慢嗎?爲什麼?快速陣列人口

回答

1

想通了,爲什麼它這麼慢,那是因爲我用的是使用ReDim在循環的每個迭代 - 感謝您的幫助反正

馬丁

1

假設你的屏幕是逐像素的,它的GetPixel調用很慢(它詢問顯示驅動程序)而不是(預定義的)陣列分配。

您可以改爲使用getdibits() api,它可以在一次調用中將DC的顏色信息複製到緩衝區中。

Here is a C++ example,但方法&調用序列與VB相同。