[WR2.0] NT,2000にてwrCreateObjectした場合

HOME › フォーラム › 旧サポート掲示板 › [WR2.0] NT,2000にてwrCreateObjectした場合

  • このトピックは空です。
5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • 投稿者
    投稿
  • #1254
    K.Nozawa
    ゲスト

    WingReport2.0を使用して、開発を行っております。

    テキストボックスに格納する文字を予め設定して、wrCreateObjectにてテキストボックスを作成した場合、格納した文字列に”・”が付加される現象が発生しております。
    例)”ON” → “ON・”
    この現象は、WindowsNT,2000のみで発生しています。
    Windows9X系では、そのような現象は発生しておらず、正常に印刷されます。

    つい先日まで、製作したソフトをWindows9X系のみで動作させていた為、気付きませんでした。
    ご確認頂けないでしょうか?
    宜しくお願い致します。

    #1255
    山口@ソフトウィング
    ゲスト

    お世話になります。

    ご指摘いただいた現象ですが、こちらで試しましたところ、該当する現象が確認できませんでした。

    恐れ入りますが、WingReportの各DLLのバージョン並びに該当個所のコーディングサンプル(『wrCreateObject』呼び出しに関係する部分と新しく作成したオブジェクトへのプロパティ設定等、を差し支えない範囲でお願いいたします。)をご提示頂けないでしょうか?

    以上お手数ですがよろしくお願い致します。

    #1256
    K.Nozawa
    ゲスト

    ご返答が遅くなり申し訳御座いません。

    DLLは、全て最新バージョンです。
    サンプルプログラムは以下の通りです。

    structstagWROBJPROPERTYAsstObjPrp;s

    SetWRObjectSet( &stObjPrp, JZ_CROMODE_TEXT ); // プロパティ設定

    strcpy( stObjPrp.szName,szObjName );s// オブジェクト名生成
    strcat( stObjPrp.szName,stWrText[i].szObjName );

    stObjPrp.dbxStart = dXPit + stWrText[i].dStartX; // 描画開始位置X
    stObjPrp.dbyStart = dYPit + stWrText[i].dStartY; // 描画開始位置Y
    stObjPrp.dbxEnd = dXPit + stWrText[i].dEndX; // 幅
    stObjPrp.dbyEnd = dYPit + stWrText[i].dEndY; // 高さ
    stObjPrp.lpszText = stWrText[i].szText; // 表示テキスト
    stObjPrp.dbFontSize = stWrText[i].dFontSize; // フォントサイズ
    stObjPrp.nOrientation = stWrText[i].uiOrient; // 縦書き/横書き
    stObjPrp.nMultipleLine = stWrText[i].uiMltLine; // マルチライン
    stObjPrp.nTextLayout = stWrText[i].uiLayout; // 文字表示位置
    stObjPrp.rgbBorderColor = stWrText[i].rgbBdrClr; // ボーダー色
    int nSts = wrCreateObject( hRep,WAP_ONTEXT,&stObjPrp,1 );

    本プログラムでは、条件に応じて100個以上のオブジェクトを生成しております。
    詳しいサンプルを送付することもできますが、いかが致しましょうか?
    また、出力された帳票をFAXで送付することも可能です。

    何卒、宜しくお願い致します。

    #1257
    山口@ソフトウィング
    ゲスト

    早速ご対応いただきありがとうございます。

    ご提示いただいた内容に基づき検証した結果、ご指摘の問題を再現することが出来ました。

    この問題は、wrCreateObject関数にてオブジェクトを動的に生成する際、テキストを同時に設定することにより発生します。ただし内部的なメモリアロケーションの状況により発生する場合としない場合とがあり得ます。プラットフォームの変更により動作環境が変化し今回初めて表出したものと考えられます。

    回避方法と致しましては、オブジェクトを生成した後改めてwrSetText関数を呼び出して頂くことにより可能です。
    対策版につきましては近日中に弊社HP上にてリリースさせていただきます。
    お急ぎの場合は対策版のDLLを暫定提供させていただきます。弊社サポート宛(support@swg.co.jp)ご連絡下さいますようお願い申し上げます。

    以上を回答とさせていただきます。
    ご迷惑をおかけいたしましたことを深くお詫び申し上げます。

    #1258
    K.Nozawa
    ゲスト

    ご返答を頂きまして、有難う御座います。

    回避方法も解りました。
    暫定版ライブラリを提供して頂けるとのことでしたが、近日中に改修版がリリースのならば、それを待とう思います。

    以上です。

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