やっぱ、コードが問題ですかね。>>577の画像のように1000枚以上読み込んで処理できているんで
メモリ不足、オーバーフローはないと思うんですけど、ソースはこんな感じです。
Thumbnailを作成するメソッド

dim i as Integer
dim pict as Picture

ProgressBar1.maximum = gpArrayCount
StaticText1.text = "-/-"

for i = 0 to gpArrayCount
pict = gpPictureFile(i).OpenAsPicture//ここで引っかかる
if pict.height > pict.width then
gpNW(i) = round(pict.width / (pict.height / gpThumbHeight))//オフサムの幅を出す
gpOffPicture(i) = newPicture(gpNW(i),gpThumbHeight,32)//オフサム用ピクチャーを作成
gpOffPicture(i).graphics.drawPicture pict,0,0,gpNW(i),gpThumbHeight,0,0,pict.Width,pict.height//サム画像を描画
else
gpNH(i) = round(pict.height / (pict.width / gpThumbWidth))//オフサムの高さを出す
gpOffPicture(i) = newPicture(gpThumbWidth,gpNH(i),32)//オフサム用ピクチャーを作成
gpOffPicture(i).graphics.drawPicture pict,0,0,gpThumbWidth,gpNH(i),0,0,pict.Width,pict.height//サム画像を描画
end if
ProgressBar1.refresh
ProgressBar1.value = i
StaticText1.text = str(i + 1) + " / " + str(gpArrayCount + 1)
next

gpArrayCountは、読み込んだ画像総数
gpPictureFileは、Folderitem型の配列 前段階でredimしてgpArrayCountの要素数にしてあり、0番目にもFolderitemが入っています
gpThumbHeight,gpThumbWidthは、設定画面で指定されたThumbnailの幅と高さ
gpNWは、元画像の幅をgpThumbHeightに合わせて縮小した幅 
gpNHは、元画像の高さをgpThumbWidthに合わせて縮小した高さ
gpOffPictureは、オフスクリーン描画用Picture配列