[WR2.0]DIB系のWindowsAPIについて

HOME › フォーラム › 旧サポート掲示板 › [WR2.0]DIB系のWindowsAPIについて

  • このトピックは空です。
3件の投稿を表示中 - 1 - 3件目 (全3件中)
  • 投稿者
    投稿
  • #1366
    小林
    ゲスト

    ★投稿日:2002/03/06(Wed)14:36:27

    お世話になっております。
    WingReport2.0を使わせて頂いております。

    WingReportで作成した帳票にImage objectを貼り付けて印刷しています。
    これが、極希に正しく印刷されないことがある現象に悩まされております。

    この現象に対応するために、こちらで作成したソフトウェアのソースコードの見直しを進めているのですが、その課程で気になる情報を見つけました。

    NT系のOSでは複数領域にまたがったメモリブロックを使用してGetDIBits API, StretchDIBits API, CreateDIBitmap API, SetDIBits API等を利用すると、これらのAPIが動作しないことがある、という情報です。

    WingReport2.0の内部では、この問題については対応されていますでしょうか?

    なお、この情報元はDelphiのメーリングリストで、以下のURLで始まっているスレッドがそれに該当します。御覧になって下さい。
    http://www2.big.or.jp/~osamu/Delphi/delphi-browse.cgi?index=063699

    以上、お忙しいところ申し訳ありませんが、ご回答の方、宜しくお願い致します。

    #1367
    松島@ソフトウィング
    ゲスト

    お世話になります。

    イメージが正しく出力されない現象について下記の項目が原因とな
    ることが多くございますので、お手数ですがご確認いただけないで
    しょうか?

     1.イメージデータの異常
     2.システムリソースが少ない場合

    ※お知らせ頂きましたイメージ処理時に使用するメモリーブロック
     の件につきまして、Delphiメーリングリストの内容を拝見させ
     て頂きました。
     内容から、Delphiに実装されたメモリー領域獲得用の関数(API)
     を使用した場合、又はWindowsのメモリー獲得用APIを使用し複
     数回に分割して取得した領域を使用した場合問題が発生する可能
     性があると推測されます。しかしながら、WingReportの内部で
     はイメージデータ用の領域は連続した領域を確保するため、一度
     の呼び出しで(WinAPIの呼び出し)処理を行っておりますので、
     今回お知らせ頂きました内容につきましては影響ないと判断させ
     て頂きました。ただし、WingReportをご利用頂きますお客様が
     問題となる方法で確保された(タイプの)メモリー領域を使用
     し、WingReportへのデータ(DIBデータなど)設定を行った場合は
     問題が発生する可能性はございます。この場合WinAPIで問題が
     発生するのではなく、WingReport内で問題が発生すると推測い
     たします。

    以上、宜しくお願いいたします。

    #1368
    小林
    ゲスト

    大変参考になりました。
    素早いご回答、ありがとうございました。

3件の投稿を表示中 - 1 - 3件目 (全3件中)
  • フォーラム「旧サポート掲示板」には新規投稿および返信を追加できません。