説明
指定したハンドルのウィンドウの画面をキャプチャし、HSPウィンドウにコピーします。枠の考慮も一応スクリプトに入れていますが、バグがあるかもしれません。
HSPスクリプト
//Created by As<akicansoft@gmail.com> #module #uselib "gdi32" #func BitBlt "BitBlt" sptr,sptr,sptr,sptr,sptr,sptr,sptr,sptr,sptr #uselib "user32" #func GetWindowDC "GetWindowDC" sptr #func ReleaseDC "ReleaseDC" sptr,sptr #func GetWindowRect "GetWindowRect" int, sptr #func ScreenToClient "ScreenToClient" int,sptr //ウィンドウの画面をキャプチャする //_hnd 撮影するウィンドウのハンドル //_flag 枠のサイズを考慮する #deffunc capture int _hnd,int _flag GetWindowDC _hnd ghdc=stat mref BMSCR,67 dim point,2 dim rect,4 GetWindowRect _hnd, varptr(rect) point.0=rect.2-rect.0 point.1=rect.3-rect.1 if flag=1{ ScreenToClient _hnd, varptr(point) } BitBlt BMSCR(4),0,0,point.0,point.1,ghdc,0,0,$C00020 ReleaseDC _hnd,ghdc redraw 1 return #global #if 1 capture hwnd,1 #endif