VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2005/03/24(Thu) 15:10
投稿者F
Eメールmasasa111@hotmail.com
URL
タイトルRe^2: スクリーンのスナップショット印刷が出来ない

早速のご返信ありがとうございます。
状況ですが

> ソフト・サンプル集のNO273 はそのままご使用でしょうか? 改変しているとか。
 サンプルのソースで以下の部分を
  'ファイル名を自動生成
    MyFileName = App.Path & "\" & Format$(Now, "yymmddhhmmss") & ".BMP"
    '表示データーをビットマップ形式のデータで保存
    Set PicData = Clipboard.GetData
    Call SavePicture(PicData, MyFileName)
  ↓
 '表示データーをビットマップ形式のデータで保存
        Set PicData = Clipboard.GetData
        
        '保存する場合
        If blnSave Then
            If strFilePath = vbNullString Then
                strFilePath = App.Path & "\" & Format$(Now, "yymmddhhmmss") & ".BMP"
            End If

            Call SavePicture(PicData, strFilePath)
        End If
 のように選択式で保存するように改変しております。
 それにともない、SaveWindowPicの引数に画像保存するか否かの変数 blnSave As Boolean を追加してお
ります。

> DELLのDimension8400 にはVBが入っているのでしょうか?
> 入っているのであれば、keybd_event の戻り値はどのようになっていますか?
 VB6がインストールされておりますが、keybd_eventの戻り値については確認しておりません。そして、問題の
PCが手元にないので、今すぐには確認できない状況です。

> SysInfo(SysInfo.ocx) コントロールはどのようにされました。
 XPで作成したプログラムを動作させた際にこの掲示板でもかつて取り上げられた(記事2596)と同じエラーが
発生したので、SYSTEM32フォルダにSYSINFO.OCXを追加しました。

> エラーは表示されないのでしょうか?
> クリップボードの中は空ですか?
 エラーは表示されません。
 
 'クリップボード内にビットマップ形式のデータがあるか調べる
  If Clipboard.GetFormat(vbCFBitmap) Then
 
 にて、ビットマップ形式のデータがないと判定され、MsgBox "保存出来ませんでした。"の処理が実行された
ことから、クリップボードの中身のデータが無いのではないかと思います。ただ、メッセージ内容は"印刷出来ま
せんでした"に改変してあります。

> 別途、手動でSNAPSHOTキーを押した場合はクリップボードにコピーされていますか?
 VBのデバックモードにて、前述のクリップボード内にビットマップ形式のデータがあるか調べるの直前でプリ
ントスクリーンのキーを押してから、処理を続けたところ印刷できました。これからプリントスクリーンのキー
を押した場合にはクリップボードにコピーされていると考えています。

> キーボードは普通のキーボードでしょうか?
 DELLの付属品で、特殊ボタン等はないです。

> 何度か試しても同じでしょうか?
 何度試してみても同じ現象が起こります。

> パソコン再起動直後に実行してもコピーできませんか?
 再起動直後でも同じ現象が起こります。

 以上です。
 説明不足で申し訳ございませんが、よろしくお願いいたします。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -