VB.net 画面のハ-ドコピーでエラー
VB.netで開発しています
実行中の画面で自分のハードコピーを印刷ボタン押下で実行するPGを作りました。
開発環境でも,インストール先でもこの半年ぐらい問題なく動いていましたが,先ごろ新規ユーザーからエラーになるとクレームがでて困っています。原因と対策を教えてください
<<<エラー内容>>>
Just-In-Time (JIT) デバッグを呼び出すための詳細については、
ダイアログ ボックスではなく、このメッセージの最後を参照してください。
************** 例外テキスト **************
System.Runtime.InteropServices.ExternalException: 要求されたクリップボード操作に成功しませんでした。
場所 System.Windows.Forms.Clipboard.ThrowIfFailed(Int32 hr)
場所 System.Windows.Forms.Clipboard.GetDataObject(Int32 retryTimes, Int32 retryDelay)
場所 System.Windows.Forms.Clipboard.GetDataObject()
場所 クラス.BtnPrintDisp_Click(Object sender, EventArgs e)
場所 System.Windows.Forms.Control.OnClick(EventArgs e)
場所 System.Windows.Forms.Button.OnClick(EventArgs e)
場所 System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
場所 System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
場所 System.Windows.Forms.Control.WndProc(Message& m)
場所 System.Windows.Forms.ButtonBase.WndProc(Message& m)
場所 System.Windows.Forms.Button.WndProc(Message& m)
場所 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
場所 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
場所 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** 読み込まれたアセンブリ **************
<<<関連ソース部分>>>
#Region "印刷ボタン"
Private Sub BtnPrintDisp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPrintDisp.Click
'印刷しますか?のMsgBox
If MessageBox.Show(Com.GetIniString(ComIniNm, "QUESTIONMSG31", "MESSAGE"), Me.Text, _
MessageBoxButtons.OKCancel, MessageBoxIcon.Question) = Windows.Forms.DialogResult.OK Then
' [Alt]キー+[Print Screen]キーの送信
SendKeys.SendWait("%{PRTSC}")
' クリップボードに格納された画像の取得
Dim data As IDataObject = Clipboard.GetDataObject()
If data.GetDataPresent(DataFormats.Bitmap) = True Then
Dim bmp As Bitmap = CType(data.GetData(DataFormats.Bitmap), Bitmap)
' 取得した画像の印刷
gBmp = bmp
PrintDoc = New System.Drawing.Printing.PrintDocument
PrintDoc.Print()
End If
End If
End Sub
Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDoc.PrintPage
' 印刷ページの描画を行う
gBmp.RotateFlip(RotateFlipType.Rotate270FlipNone)
e.Graphics.DrawImage(gBmp, New System.Drawing.Rectangle(50, 100, 480 * 1.5, 640 * 1.5))
End Sub
#End Region
よろしくお願いします
お礼
有難う御座いました、出来ました。