スクリーンショットを画像ファイルに保存するために BitBlt を一度使用しました (.Net Compact Framework V3.5、Windows Mobile 2003 以降)。うまくいきました。ここで、ビットマップをフォームに描画したいと思います。を使用できthis.CreateGraphics().DrawImage(mybitmap, 0, 0)
ましたが、以前のように BitBlt で動作し、パラメーターを交換するだけでよいかどうか疑問に思っていました。だから私は書いた:
[DllImport("coredll.dll")]
public static extern int BitBlt(IntPtr hdcDest, int nXDest, int nYDest, int nWidth, int nHeight, IntPtr hdcSrc, int nXSrc, int nYSrc, uint dwRop);
(そしてさらに下へ:)
IntPtr hb = mybitmap.GetHbitmap();
BitBlt(this.Handle, 0, 0, mybitmap.Width, mybitmap.Height, hb, 0, 0, 0x00CC0020);
しかし、フォームは真っ白のままです。何故ですか?私が犯したエラーはどこにありますか? ご意見ありがとうございます。乾杯、デビッド